You are viewing a single comment's thread. Return to all comments →
go golang solution
package main import ( "fmt" "bufio" "os" "io" "strconv" ) type SinglyLinkedListNode struct { key int next *SinglyLinkedListNode } func insertNodeAtHead(head *SinglyLinkedListNode, data int) *SinglyLinkedListNode { if head == nil { return &SinglyLinkedListNode{key: data} } temp := head head = &SinglyLinkedListNode{key: data, next: temp} return head } func main() { reader := bufio.NewReader(os.Stdin) Itr := readInt(reader) result := &SinglyLinkedListNode{key: readInt(reader)} numsArr := []int{} for i := 0;i < Itr-1;i++ { numsArr = append(numsArr, readInt(reader)) } for _, num := range numsArr { result = insertNodeAtHead(result, num) } traverseLinkedList(result) } func traverseLinkedList(head *SinglyLinkedListNode) { for head != nil { fmt.Println(head.key) head = head.next } } func readLine(reader *bufio.Reader) string { line, _, err := reader.ReadLine() if err == io.EOF { return "" } return string(line) } func readInt(reader *bufio.Reader) int { res, _ := strconv.Atoi(readLine(reader)) return res }
Seems like cookies are disabled on this browser, please enable them to open this website
Insert a node at the head of a linked list
You are viewing a single comment's thread. Return to all comments →
go golang solution