Golang Program to delete the node after the Kth node (K is not in the linked list).

Go ProgrammingServer Side ProgrammingProgramming


Delete node after 50(K is not in the linked list) value node.

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 − Iterate the given linked list.

Step 4 − If node value 50 is not found, return the head without deleting any node.


 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
func DeleteAfterKthNode(head *Node, k int) *Node{
   // Delete after Kth node(K is not in the linked list).
   if head == nil{
      return head
   temp := head
   for temp != nil{
      if temp.value == k{
         temp.next = temp.next.next
      temp = temp.next
   return head
func main(){
   head := NewNode(30, NewNode(10, NewNode(40, NewNode(40, nil))))
   fmt.Printf("Input Linked list is: ")
   head = DeleteAfterKthNode(head, 50)
   fmt.Printf("Delete node after %dth value node, Linked List is: ", 50)


Input Linked list is: 30 10 40 40
Delete node after 50th value node, Linked List is: 30 10 40 40
Published on 18-Mar-2021 06:37:44