LinkedList Example In C#

  1. namespace Consolepractice {  
  2.     class Program {  
  3.         public static void Main(string[] args) {  
  4.             document d1 = new document() {  
  5.                 docname = "C# tutorial",  
  6.                     doctype = "PDF"  
  7.             };  
  8.             document d2 = new document() {  
  9.                 docname = "Java tutorial",  
  10.                     doctype = "Word"  
  11.             };  
  12.             document d3 = new document() {  
  13.                 docname = "SQl tutorial",  
  14.                     doctype = "Word"  
  15.             };  
  16.             document d4 = new document() {  
  17.                 docname = "HTML tutorial",  
  18.                     doctype = "Word"  
  19.             };  
  20.             document d5 = new document() {  
  21.                 docname = "CSS tutorial",  
  22.                     doctype = "PDF"  
  23.             };  
  24.             document d6 = new document() {  
  25.                 docname = "Jquery tutorial",  
  26.                     doctype = "PDF"  
  27.             };  
  28.             PrintQue ob = new PrintQue();  
  29.             Console.WriteLine("Adding document operation start....\n \n");  
  30.             //add node at last position  
  31.             ob.Addlast(d1);  
  32.             ob.Addlast(d2);  
  33.             //add node at first position  
  34.             ob.AddFirst(d3);  
  35.             //add node before d1 node  
  36.             ob.AddBefore(d1, d4);  
  37.             //add node after d1 node  
  38.             ob.AddAfter(d1, d5);  
  39.             //add node at last position  
  40.             ob.Addlast(d6);  
  41.             foreach(var item in ob.lnk) {  
  42.                 Console.WriteLine("Document nae:{0} and doctype:{1}", item.docname, item.doctype);  
  43.             }  
  44.             Console.WriteLine("\nAfter remove document operation ....\n \n");  
  45.             ob.RemoveFirst(); //remove first node  
  46.             ob.RemoveLast(); //remove last node  
  47.             ob.Removenode(d5); //remove Css tutorial node  
  48.             foreach(var item in ob.lnk) {  
  49.                 Console.WriteLine("Document nae:{0} and doctype:{1}", item.docname, item.doctype);  
  50.             }  
  51.             Console.ReadKey();  
  52.         }  
  53.     }  
  54.     class PrintQue {  
  55.         public LinkedList < document > lnk = new LinkedList < document > ();  
  56.         public void Addlast(document node) {  
  57.             lnk.AddLast(node);  
  58.         }  
  59.         public void AddFirst(document node) {  
  60.             lnk.AddFirst(node);  
  61.         }  
  62.         public void AddBefore(document node, document newnode) {  
  63.             lnk.AddBefore(lnk.Find(node), newnode);  
  64.         }  
  65.         public void AddAfter(document node, document newnode) {  
  66.             lnk.AddAfter(lnk.Find(node), newnode);  
  67.         }  
  68.         public void RemoveFirst() {  
  69.             lnk.RemoveFirst();  
  70.         }  
  71.         public void RemoveLast() {  
  72.             lnk.RemoveLast();  
  73.         }  
  74.         public void Removenode(document node) {  
  75.             lnk.Remove(node);  
  76.         }  
  77.     }  
  78.     class document {  
  79.         public string docname;  
  80.         public string doctype;  
  81.     }  
  82. }