Golang : Iterate linked list example
Alright, you have created a linked list with container/list
and now you wonder how are you going to iterate over the elements inside the linked list.
Below is a code fragment from my previous example on how to create a linked list with Go. To iterate over the list elements, use a for loop until all the elements in the list are exhausted. To get the first element, use Front()
method and next element with Next()
method.
Here you go!
package main
import (
"container/list"
"fmt"
)
func main() {
// create a new link list
alist := list.New()
fmt.Println("Size before : ", alist.Len()) // list size before
// push element into list
alist.PushBack("a")
alist.PushBack("b")
alist.PushBack("c")
fmt.Println("Size after insert(push): ", alist.Len()) // list size after
// iterate over list elements
for e := alist.Front(); e != nil; e = e.Next() {
fmt.Println(e.Value.(string))
}
}
You play this code at http://play.golang.org/p/WGcldjJavQ
Output :
Size before : 0
Size after insert(push): 3
a
b
c
See also : Golang : Linked list example
By Adam Ng
IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.
Advertisement
Tutorials
+17.5k Unmarshal/Load CSV record into struct in Go
+15k Golang : Get file permission
+3.9k PHP : Extract part of a string starting from the middle
+16.8k Golang : Display list of time zones with GMT
+22.8k Golang : Daemonizing a simple web server process example
+5k Golang : Function as an argument type example
+6.4k Golang : Get YouTube playlist
+8.3k Golang : Terminate-stay-resident or daemonize your program?
+5k Golang : How to write backslash in string?
+9.4k Golang : Simple File Server
+4.9k Golang : Denco multiplexer example