Singly-linked list/Traversal: Difference between revisions
Content added Content deleted
Thundergnat (talk | contribs) m (syntax highlighting fixup automation) |
(Added Odin variant) |
||
Line 1,525: | Line 1,525: | ||
nymph |
nymph |
||
- : unit = ()</syntaxhighlight> |
- : unit = ()</syntaxhighlight> |
||
=={{header|Odin}}== |
|||
<syntaxhighlight lang="odin">package main |
|||
import "core:fmt" |
|||
Node :: struct { |
|||
data: rune, |
|||
next: ^Node, |
|||
} |
|||
insert_after :: proc(node, new_node: ^Node) { |
|||
new_node.next = node.next |
|||
node.next = new_node |
|||
} |
|||
main :: proc() { |
|||
a := new(Node) |
|||
a.data = 'A' |
|||
b := new(Node) |
|||
b.data = 'B' |
|||
c := new(Node) |
|||
c.data = 'C' |
|||
insert_after(a, b) // A -> B |
|||
insert_after(a, c) // A -> C -> B |
|||
for n := a; n != nil; n = n.next { |
|||
fmt.print(n.data) |
|||
} // prints: ACB |
|||
} |
|||
</syntaxhighlight> |
|||
=={{header|Oforth}}== |
=={{header|Oforth}}== |