Syntax error Golang Program to update the ith index node value, when index is at the last index.

Golang Program to update the ith index node value, when index is at the last index.



Example

Approach to solve this problem

Step 1 − Define a method that accepts the head of a linked list.

Step 2 − If head == nil, return the head.

Step 3 − Initialize the index as i := 0.

Step 4 − Iterate the given linked list from its head.

Step 5 − If index i matches with the given index (to be updated), then update that node.

Step 6 − Else, return head.

Example

 Live Demo

package main
import "fmt"
type Node struct {
   value int
   next *Node
}
func NewNode(value int, next *Node) *Node{
   var n Node
   n.value = value
   n.next = next
   return &n
}
func TraverseLinkedList(head *Node){
   temp := head
   for temp != nil {
      fmt.Printf("%d ", temp.value)
      temp = temp.next
   }
   fmt.Println()
}
func UpdateKthIndexNode(head *Node, index , data int) *Node{
   if head == nil{
      return head
   }
   i := 0
   temp := head
   for temp != nil{
      if i == index{
         temp.value = data
         break
      }
      i++
      temp = temp.next
   }
   return head
}
func main(){
   head := NewNode(30, NewNode(10, NewNode(40, NewNode(40, nil))))
   fmt.Printf("Input Linked list is: ")
   TraverseLinkedList(head)
   index := 3
   head = UpdateKthIndexNode(head, index, 15)
   fmt.Printf("Update %dth index node, Linked List is: ", index)
   TraverseLinkedList(head)
}

Output

Input Linked list is: 30 10 40 40
Update 3th index node, Linked List is: 30 10 40 15
Updated on: 2021-03-18T11:38:18+05:30

120 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements