- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- MS Excel
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Social Studies
- Fashion Studies
- Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Golang Program to delete the node after the Kth node (K is not in the linked list).
Examples
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.
Example
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 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: ") TraverseLinkedList(head) head = DeleteAfterKthNode(head, 50) fmt.Printf("Delete node after %dth value node, Linked List is: ", 50) TraverseLinkedList(head) }
Output
Input Linked list is: 30 10 40 40 Delete node after 50th value node, Linked List is: 30 10 40 40
Advertisements
To Continue Learning Please Login
Login with Google