Anonymous user
Doubly-linked list/Element insertion: Difference between revisions
Doubly-linked list/Element insertion (view source)
Revision as of 17:21, 23 July 2013
, 10 years agoUpdated D entry
(Racket) |
(Updated D entry) |
||
Line 230:
struct Node(T) {
T data;
data = data_;▼
}▼
}
/// If prev is null, prev gets to point to a new node.▼
void show(T)(Node!(T)* list) {▼
while (list) {▼
write(list.data, " ");▼
writeln();▼
}▼
▲/// If prev is null, prev gets to point to a new node
▲void insertAfter(T)(ref Node!(T)* prev, T item) {
if (prev) {
auto newNode = new Node!T(item, prev, prev.next);
Line 256 ⟶ 242:
} else
prev = new Node!T(item);
▲}
▲ while (list) {
▲ write(list.data, " ");
▲ }
}
Line 261 ⟶ 255:
Node!(string)* list;
insertAfter(list, "A");
insertAfter(list, "B");
insertAfter(list, "C");
}</lang>
{{out}}
<pre>A
A B
|