def partList(ll, n): more = LinkedListFIFO() less = LinkedListFIFO() node = ll.head while node: item = node.value if item < n: less.addNode(item) elif item > n: more.addNode(item) node = node.pointer less.addNode(n) nodemore = more.head while nodemore: less.addNode(nodemore.value) nodemore = nodemore.pointer return less
def isCircularll(ll): p1 = ll.head p2 = ll.head while p2: try: p1 = p1.pointer p2 = p2.pointer.pointer except: break if p1 == p2: return True return False if __name__ == '__main__': ll = LinkedListFIFO() for i in range(10): ll.addNode(i) ll._printList() print(isCircularll(ll)) lcirc = cicularLinkedListFIFO() for i in range(10): lcirc.addNode(i) print(isCircularll(lcirc))
node = node.pointer less.addNode(n) nodemore = more.head while nodemore: less.addNode(nodemore.value) nodemore = nodemore.pointer return less if __name__ == '__main__': ll = LinkedListFIFO() l = [6, 7, 3, 4, 9, 5, 1, 2, 8] for i in l: ll.addNode(i) print('Before Part') ll._printList() print('After Part') newll = partList(ll, 6) newll._printList()
def _createHashTable(self): for i in range(self.size) : self.slots.append(LinkedListFIFO())
return False return isPal(l1[1:-1]) def checkllPal(ll): node = ll.head l = [] while node: l.append(node.value) node = node.pointer return isPal(l) if __name__ == '__main__': ll = LinkedListFIFO() l1 = [1, 2, 3, 2, 1] for i in l1: ll.addNode(i) assert (checkllPal(ll) == True) ll.addNode(2) ll.addNode(3) assert (checkllPal(ll) == False)
def checkllPal(ll): node = ll.head l = [] while node: l.append(node.value) node = node.pointer return isPal(l) if __name__ == '__main__': ll = LinkedListFIFO() l1 = [1, 2, 3, 2, 1] for i in l1: ll.addNode(i) assert(checkllPal(ll) == True) ll.addNode(2) ll.addNode(3) assert(checkllPal(ll) == False)