Golang program to insert a node at the ith index node, when the index is at the last position in the linked list.
Examples

Example
Approach to solve this problem
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 InsertNodeAtIthIndex(head *Node, index, data int) *Node{
if head == nil{
head = NewNode(data, nil)
return head
}
if index == 0{
newNode := NewNode(data, nil)
newNode.next = head
head = newNode
return head
}
i := 0
temp := head
preNode := temp
for temp != nil {
if i == index{
newNode := NewNode(data, nil)
preNode.next = newNode
newNode.next = temp
break
}
i++
preNode = temp
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 = InsertNodeAtIthIndex(head, index, 35)
fmt.Printf("Inserting new node at %dth index, Linked List is: ", index)
TraverseLinkedList(head)
}
Output
Input Linked list is: 30 10 40 40
Inserting new node at 3th index, Linked List is: 30 10 40 35 40
Published on 18-Mar-2021 12:15:34
- Related Questions & Answers
- Golang program to insert a node at the ith index node, when the index is at the mid-index position in the linked list.
- Golang Program to insert a node at the ith index node, when the index is at the 0th position in the linked list.
- Golang Program to delete the ith index node, when the index is at 0th position in the linked list.
- Golang program to insert a node at the ith index node, when the index is at the nth index, i.e., out of bound in the linked list.
- Golang Program to update the ith index node value, when index is at the last index.
- Golang program to delete the ith index node, when the index is the last index in the linked list.
- Golang program to delete the ith index node, when the index is at the mid-index level in the linked list.
- Golang Program to update the ith index node value, when index is at 0 index.
- Golang program to update the ith index node value, when the index is at 2, i.e., mid index.
- Golang program to update the ith index node value, when index is at the nth position, i.e., out of index bound.
- Golang program to delete the ith index node, when index is the out of range in the linked list.
- C# Program to add a node at the last position in a Linked List
- Golang Program to delete the last node from a linked list.
- C program to insert a node at any position using double linked list
- Golang program to insert a new node after the Kth node (K is not in the linked list)