C# | Adding new node or value at the start of LinkedList<T>
Last Updated :
01 Feb, 2019
LinkedList<T>.AddFirst Method is used to add a new node or value at the starting of the LinkedList<T>. There are 2 methods in the overload list of this method as follows:
- AddFirst(LinkedList<T>)
- AddFirst(T)
AddFirst(LinkedListNode<T>)
This method is used to add the specified new node at the starting of the LinkedList<
T>.
Syntax:
public void AddFirst (System.Collections.Generic.LinkedListNode<T> node);
Here,
node is the new LinkedListNode<
T> to add at the start of the LinkedList<
T>.
Exceptions:
- ArgumentNullException : If the node is null.
- InvalidOperationException : If the node belongs to another LinkedList<T>.
Example:
CSHARP
// C# code to add new node
// at the start of LinkedList
using System;
using System.Collections;
using System.Collections.Generic;
class GFG {
// Driver code
public static void Main()
{
// Creating a LinkedList of Integers
LinkedList<int> myList = new LinkedList<int>();
// Adding nodes in LinkedList
myList.AddLast(2);
myList.AddLast(4);
myList.AddLast(6);
myList.AddLast(6);
myList.AddLast(6);
myList.AddLast(8);
// To get the count of nodes in LinkedList
// before removing all the nodes
Console.WriteLine("Total nodes in myList are : " + myList.Count);
// Displaying the nodes in LinkedList
foreach(int i in myList)
{
Console.WriteLine(i);
}
// Adding new node at the start of LinkedList
// This will give error as node is null
myList.AddFirst(5);
// To get the count of nodes in LinkedList
// after removing all the nodes
Console.WriteLine("Total nodes in myList are : " + myList.Count);
// Displaying the nodes in LinkedList
foreach(int i in myList)
{
Console.WriteLine(i);
}
}
}
Output:
Total nodes in myList are : 6
2
4
6
6
6
8
Unhandled Exception:
System.ArgumentNullException: Value cannot be null.
Parameter name: node
Note:
- LinkedList<T> accepts null as a valid Value for reference types and allows duplicate values.
- If the LinkedList<T> is empty, the new node becomes the First and the Last.
- This method is an O(1) operation.
AddFirst(T) Method
This method is used to add a new node containing the specified value at the start of the LinkedList<
T>.
Syntax:
public System.Collections.Generic.LinkedListNode AddFirst (T value);
Here,
value is the value to add at the start of the LinkedList<
T>.
Return Value: The new LinkedListNode<
T> containing value.
Example:
CSHARP
// C# code to add new node containing
// the specified value at the start
// of LinkedList
using System;
using System.Collections;
using System.Collections.Generic;
class GFG {
// Driver code
public static void Main()
{
// Creating a LinkedList of Integers
LinkedList<int> myList = new LinkedList<int>();
// Adding nodes in LinkedList
myList.AddLast(2);
myList.AddLast(4);
myList.AddLast(6);
myList.AddLast(6);
myList.AddLast(6);
myList.AddLast(8);
// To get the count of nodes in LinkedList
// before removing all the nodes
Console.WriteLine("Total nodes in myList are : " + myList.Count);
// Displaying the nodes in LinkedList
foreach(int i in myList)
{
Console.WriteLine(i);
}
// Adding new node containing the
// specified value at the start of LinkedList
myList.AddFirst(20);
// To get the count of nodes in LinkedList
// after removing all the nodes
Console.WriteLine("Total nodes in myList are : " + myList.Count);
// Displaying the nodes in LinkedList
foreach(int i in myList)
{
Console.WriteLine(i);
}
}
}
Output:
Total nodes in myList are : 6
2
4
6
6
6
8
Total nodes in myList are : 7
20
2
4
6
6
6
8
Note:
- LinkedList<T> accepts null as a valid Value for reference types and allows duplicate values.
- If the LinkedList<T> is empty, the new node becomes the First and the Last.
- This method is an O(1) operation.
Reference: