<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. C語言

    C#數據結構之循環鏈表的實例代碼

    時間:2025-03-15 14:28:15 C語言 我要投稿
    • 相關推薦

    C#數據結構之循環鏈表的實例代碼

      很多人都不知道C#數據結構中循環鏈表的代碼怎么寫,下面小編為大家整理了C#數據結構之循環鏈表的實例代碼,希望能幫到大家!

      復制代碼 代碼如下:

      public class Node

      {

      public object Element;

      public Node Link;

      public Node()

      {

      Element = null;

      Link = null;

      }

      public Node(object theElement)

      {

      Element = theElement;

      Link = null;

      }

      }

      復制代碼 代碼如下:

      public class LinkedList

      {

      //頭結點

      protected Node Header;

      private int count;

      public LinkedList()

      {

      count = 0;

      Header = new Node("header");

      Header.Link = Header;

      }

      public bool IsEmpty()

      {

      return (Header.Link == null);

      }

      public void MakeEmpty()

      {

      Header.Link = null;

      }

      public void PrintList()

      {

      Node current = new Node();

      current = Header;

      while (current.Link.Element.ToString() != "header")

      {

      Console.WriteLine(current.Link.Element);

      current = current.Link;

      }

      }

      private Node FindPrevious(object n)

      {

      Node current = Header;

      while (!(current.Link == null) && current.Link.Element != n)

      {

      current = current.Link;

      }

      return current;

      }

      private Node Find(object item)

      {

      Node current = new Node();

      current = Header.Link;

      while (current.Element != item)

      {

      current = current.Link;

      }

      return current;

      }

      public void Insert(object newItem, object after)

      {

      Node current = new Node();

      Node newNode = new Node(newItem);

      current = Find(after);

      newNode.Link = current.Link;

      current.Link = newNode;

      count++;

      }

      public void Remove(object n)

      {

      Node p = FindPrevious(n);

      if (!(p.Link == null))

      {

      p.Link = p.Link.Link;

      count--;

      }

      }

      public void InsertFirst(object n)

      {

      Node current = new Node(n);

      current.Link = Header;

      Header.Link = current;

      count++;

      }

      public Node Move(int n)

      {

      Node current = Header.Link;

      Node tmp;

      for (int i = 0; i <= n; i++)

      {

      current = current.Link;

      }

      if (current.Element.ToString() == "header")

      {

      current = current.Link;

      }

      tmp = current;

      return tmp;

      }

      public Node GetFirst()

      {

      return Header;

      }

      }

    【C#數據結構之循環鏈表的實例代碼】相關文章:

    c#實現輪詢算法實例代碼05-31

    C#實現協同過濾算法的實例代碼06-19

    c#實現sunday算法實例08-07

    PHP實用的代碼實例08-12

    Java for循環的寫法代碼08-01

    C語言的循環鏈表和約瑟夫環09-29

    學習php分頁代碼實例10-11

    關于循環的java代碼示例09-26

    C語言數據結構實現鏈表逆序并輸出06-23

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人