Pergunta de entrevista da empresa Viasat

Implement a function to reverse a linked list.

Resposta da entrevista

Sigiloso

9 de mar. de 2017

class Node: def __init__( self, data ): self.data = data self.next = None class LinkedList: def __init__( self ): self.head = None self.tail = None def AddNode( self, data ): new_node = Node( data ) if self.head == None: self.head = new_node if self.tail != None: self.tail.next = new_node self.tail = new_node def revLast( self ): node = self.head x = [] while node != None: x.append(node.data) node = node.next x = x[::-1] rlist = LinkedList() for i in x: rlist.AddNode(i) n1 = rlist.head while n1 != None: print n1.data n1 = n1.next List = LinkedList() List.AddNode(10) List.AddNode(20) List.AddNode(30) List.AddNode(4) List.revLast( )