diff options
author | Mattias Andrée <maandree@operamail.com> | 2014-01-23 11:27:07 +0100 |
---|---|---|
committer | Mattias Andrée <maandree@operamail.com> | 2014-01-23 11:27:07 +0100 |
commit | 74eb1490e1d19d030981e9ef1554018526c16df2 (patch) | |
tree | 48901557639c1e3d82e6d5c3d7934ea62e60135b /src/datastructures/linkedlists/template | |
parent | m (diff) | |
download | algorithms-and-data-structures-74eb1490e1d19d030981e9ef1554018526c16df2.tar.gz algorithms-and-data-structures-74eb1490e1d19d030981e9ef1554018526c16df2.tar.bz2 algorithms-and-data-structures-74eb1490e1d19d030981e9ef1554018526c16df2.tar.xz |
whoops + add array sentinel linked lists
Signed-off-by: Mattias Andrée <maandree@operamail.com>
Diffstat (limited to 'src/datastructures/linkedlists/template')
-rw-r--r-- | src/datastructures/linkedlists/template | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/src/datastructures/linkedlists/template b/src/datastructures/linkedlists/template index c2ff722..d2f6c84 100644 --- a/src/datastructures/linkedlists/template +++ b/src/datastructures/linkedlists/template @@ -164,16 +164,18 @@ public Node removeAfter(Node predecessor) { Node node = predecessor.next; - if (node == null) + if (node != null) + { predecessor.next = node.next; £>if (( with_prev )); then - else if (node.next != null) - node.next.previous = predecessor; + if (node.next != null) + node.next.previous = predecessor; £>fi £>if (( with_tail )); then - if (this.tail == node) - this.tail = predecessor; + if (this.tail == node) + this.tail = predecessor; £>fi + } return node; } @@ -209,14 +211,16 @@ public Node removeBefore(Node successor) { Node node = successor.previous; - if (node == null) + if (node != null) + { successor.previous = node.previous; - else if (node.previous != null) - node.previous.next = successor; + if (node.previous != null) + node.previous.next = successor; £>if (( with_head )); then - if (this.head == node) - this.head = successor; + if (this.head == node) + this.head = successor; £>fi + } return node; } |