public Integer pop() { if (top.next == null) { return null; } int val = top.next.data; top.next = top.next.next; return val; }
public static LinkNode stackImplementation(LinkNode linkedList) { Stack<LinkNode> stack = new Stack<>(); LinkNode tempNode = linkedList; while (tempNode != null) { stack.push(tempNode); tempNode = tempNode.next; } tempNode = stack.pop(); linkedList = tempNode; while (!stack.empty()) { tempNode.next = stack.pop(); tempNode = tempNode.next; } tempNode.next = null; return linkedList; }
public static void main(String args[]) { LinkNode linkNode = new LinkNode(10); linkNode.next = new LinkNode(20); linkNode.next.next = new LinkNode(30); linkNode.next.next.next = new LinkNode(40); LinkNode reversedLinkedList = stackImplementation(linkNode); System.out.println("Done"); }
public void push(Integer data) { LinkNode node = new LinkNode(data); node.next = top.next; top.next = node; }
Stack() { top = new LinkNode(-1); top.next = null; }