Skip to main content

Insert node at beginning of doubly linked list in c#

Csharp program for Insert node at beginning of doubly linked list. Here problem description and explanation.

// Include namespace system
using System;
// Csharp Program For
// insert new node at beginning of doubly linked list

// Define class of linked list Node
public class LinkNode
{
	public int data;
	public LinkNode next;
	public LinkNode prev;
	public LinkNode(int data)
	{
		this.data = data;
		this.next = null;
		this.prev = null;
	}
}
public class DoublyLinkedList
{
	public LinkNode head;
	public DoublyLinkedList()
	{
		// Set inital value
		this.head = null;
	}
	// Insert new node at beginning position
	public void insert(int value)
	{
		// Create a node
		var node = new LinkNode(value);
		node.next = this.head;
		// When linked list is not empty
		if (this.head != null)
		{
			this.head.prev = node;
		}
		// Make new head
		this.head = node;
	}
	// Display node element of doubly linked list
	public void display()
	{
		if (this.head == null)
		{
			Console.WriteLine("Empty Linked List");
		}
		else
		{
			Console.WriteLine("  Doubly Linked List Element :");
			// Get first node of linked list
			var temp = this.head;
			// iterate linked list 
			while (temp != null)
			{
				// Display node value
				Console.Write("  " + temp.data.ToString());
				// Visit to next node
				temp = temp.next;
			}
		}
	}
	public static void Main(String[] args)
	{
		var dll = new DoublyLinkedList();
		// Insert following linked list nodes
		dll.insert(70);
		dll.insert(60);
		dll.insert(50);
		dll.insert(40);
		dll.insert(30);
		dll.insert(20);
		dll.insert(10);
		//  NULL <- 10 <--> 20 <--> 30 <--> 40 <--> 50 <--> 60 <--> 70->NULL
		dll.display();
	}
}

Output

  Doubly Linked List Element :
  10  20  30  40  50  60  70




Comment

Please share your knowledge to improve code and content standard. Also submit your doubts, and test case. We improve by your feedback. We will try to resolve your query as soon as possible.

New Comment