Pregunta de entrevista

Entrevista para Software Engineer

-Ciudad de Mexico

Oracle

Write an algorithm to reverse a single linked list.

Respuesta

Respuestas de entrevistas

2 respuestas

0

class ListNode { public: int val; ListNode* next; ListNode(int x) { val=x; next=NULL; }; }; class Solution { public : ListNode* ReverseList(ListNode* A) { stack s; ListNode* temp=A,*ans; while (temp!=NULL) { s.push(temp); temp=temp->next; } temp=s.top(); s.pop(); ans=temp; while(!s.empty()) { temp->next=s.top(); temp=s.top(); s.pop(); } temp->next=NULL; return ans; } };

Anónimo en

0

using System; using System.Collections.Generic; public class Test { public static void Main() { var linkedList = new LinkedList(); linkedList.AddLast(1); linkedList.AddLast(3); linkedList.AddLast(5); var stack = new Stack(); var reversedLinkedList = new LinkedList(); Console.WriteLine("Linked List: "); var currNode = linkedList.First; while(currNode != null){ stack.Push(currNode.Value); Console.WriteLine(currNode.Value); currNode = currNode.Next; } while (stack.Count > 0) reversedLinkedList.AddLast(stack.Pop()); Console.WriteLine("Reversed List: "); currNode = reversedLinkedList.First; while(currNode != null){ Console.WriteLine(currNode.Value); currNode = currNode.Next; } } }

Christine en

Agregar respuestas o comentarios

Para comentar esto, Inicia sesión o regístrate.