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
+11.5k Linux : How to install driver for 600Mbps Dual Band Wifi USB Adapter
+8.4k Golang : Heap sort example
+9.6k Golang : Compare files modify date example
+19.2k Golang : Count JSON objects and convert to slice/array
+8.6k Golang : Capture text return from exec function example
+5.1k Golang : Stop goroutine without channel
+4.5k HTTP common errors and their meaning explained
+4.8k Golang : Pad file extension automagically
+11.7k Golang : convert(cast) string to integer value
+7.3k Golang : Ways to recover memory during run time.
+13.5k Javascript : Prompt confirmation before exit
+11.5k Golang : How to parse plain email text and process email header?