Bottom Page

• 0 Vote(s) - 0 Average
• 1
• 2
• 3
• 4
• 5
 FAST algorithm of checkSamecircularList(x, y) without L CircularList ref but find ref lsepolis123 Programmer named Tim Posts: 16 Threads: 7 Joined: Jan 2019 Reputation: 0 Likes received: 1 #1 Aug-14-2019, 07:51 AM My book has this exercise: R-7.6 Suppose that x and y are references to nodes of circularly linked lists, although not necessarily the same list. Describe a fast algorithm for telling if x and y belong to the same list. I wonder if there is the FAST algorithm of checkSamecircularList(x, y) without L CircularList ref but find ref to L from the first element x... can do this??? after check if y is in this List of x... well ? checkSamecircularList(L, x, y): result RESTART: F:/DOWNLOADS/Textbooks - Source Code/Python DS Tamassia/ch07/exe/R-7-6.py same list x, y of L: True same list x1, y of L: False same list x1, y1 of L: False same list x1, y1 of L1: True >>> ```if __name__ == '__main__': # Function to find sum of the given # Circular linked list def checkSamecircularList(L, x, y): temp = L._tail # head # tsum = temp.data temp = temp._next xyes = False yyes = False while(temp is not L._tail): if temp is x: xyes = True if temp is y: yyes = True temp = temp._next return xyes and yyes L = CircularQueue() L.enqueue(1) L.enqueue(2) L.enqueue(3) L.enqueue(4) L.enqueue(5) L1 = CircularQueue() L1.enqueue(1) L1.enqueue(2) L1.enqueue(3) L1.enqueue(4) L1.enqueue(5) x = L.first() y = (L.first())._next x1 = L1.first() y1 = (L1.first())._next print("same list x, y of L: " + str(checkSamecircularList(L, x, y)) ) print("same list x1, y of L: " + str(checkSamecircularList(L, x1, y)) ) print("same list x1, y1 of L: " + str(checkSamecircularList(L, x1, y1)) ) print("same list x1, y1 of L1: " + str(checkSamecircularList(L1, x1,y1)) ) ``` « Next Oldest | Next Newest »

Top Page

Forum Jump:

Users browsing this thread: 1 Guest(s)