Question: Q1: Extend the CirList by adding __str__(self) method that returns a reasonable string representation of an ordered list using space and square brackets. listA =
Q1: Extend the CirList by adding __str__(self) method that returns a reasonable string representation of an ordered list using space and square brackets.
listA = CirList() listA.append(5) listA.append(3) listA.append(3) print(listA) ======= [5 3 3]
Q2: Re-write the append(self, item) and add_before(self, item, old_item) methods such that no duplicate items will be appeared on the ordered list.
listA = CirList() listA.append(5) listA.append(3) listA.append(3) print(listA) ====== [5 3]


class NodeDLL: def init_(self, init data, next_node-None, prev_node-None): self.datainit data self.next next node self.prev - prev_node def get_data(self): def get_prev(self def get_next (self): def set_data(self, new_data): def set next(self, new_next): def set prev(self, new prev) return self.data return self.prev return self.next self, data = new-data self.next - new next self.prev -new_prev class NodeDLL: def init_(self, init data, next_node-None, prev_node-None): self.datainit data self.next next node self.prev - prev_node def get_data(self): def get_prev(self def get_next (self): def set_data(self, new_data): def set next(self, new_next): def set prev(self, new prev) return self.data return self.prev return self.next self, data = new-data self.next - new next self.prev -new_prev
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
