Wednesday, 15 April 2015

java - How to insert and element before another in a linked list -



java - How to insert and element before another in a linked list -

public void insertelementbefore(e element, e newelement) { mynode<e> current = head; if (head != null) { while (current != null) { if (current.data.equals(element)) { mynode<e> n = new mynode<e>(newelement); n.next = current.next; current.next = n; return; } current = current.next; } } }

this have this. i'm having troubles insert newelement before intended element. can't seem figure out syntax it. i've been tinkering while , best insert after element does

any help appreciated

in case of single linked list, need two temporary nodes:

mynode<e> current represent current node in single linked list. mynode<e> prev represent node before current node in single linked list.

then, have add together new node between these nodes. if don't have prev node, when setting current node next node of new node, nodes before current lost.

this how code like:

public void insertelementbefore(e element, e newelement) { mynode<e> current = head; //check here mynode<e> prev = null; if (head != null) { while (current != null) { if (current.data.equals(element)) { mynode<e> n = new mynode<e>(newelement); n.next = current; //check here if (prev != null) { prev.next = n; } return; } //check here prev = current; current = current.next; } } }

java list linked-list singly-linked-list

No comments:

Post a Comment