Doubly-linked list/Traversal: Difference between revisions

→‎E: new example
(link to RC D.L.L. definition)
(→‎E: new example)
Line 211:
<pre>A B C D
D C B A </pre>
 
=={{header|E}}==
 
Given the definition in [[../Definition#E]],
 
<lang e>def traverse(list) {
var node := list.atFirst()
while (true) {
println(node[])
if (node.hasNext()) {
node := node.next()
} else {
break
}
}
while (true) {
println(node[])
if (node.hasPrev()) {
node := node.prev()
} else {
break
}
}
}</lang>
 
<lang e>? def list := makeDLList()
# value: <>
 
? list.push(1)
? list.push(2)
? list.push(3)
 
? traverse(list)
1
2
3
3
2
1</lang>
 
=={{header|J}}==