C#数据结构(有序链表)
只是实现了插入的方法。
1 using System;
2 class Link
3 {
4 public int data;
5 public Link next;
6 public Link(int data)
7 {
8 this.data=data;
9 }
10 }
11 class SortedLinkList
12 {
13 public Link Head;
14 public SortedLinkList()
15 {
16 Head=null;
17 }
18 public void InsertLink(int data)
19 {
20 Link newLink = new Link(data);
21 if(Head==null)
22 Head=newLink;
23 else
24 {
25 Link previous=Head;
26 Link current =Head;
27 while (current!=null && data>current.data)
28 {
29 previous=current;
30 current=current.next;
31 }
32 if(current==Head)
33 Head=newLink;
34 else
35 previous.next=newLink;
36 newLink.next=current;
37 }
38
39 }
40 public void Display()
41 {
42 Link current = Head;
43 while(current!=null)
44 {
45 Console.WriteLine(current.data);
46 current=current.next;
47 }
48 }
49 }
50 class SortedLinkListApp
51 {
52 static void Main()
53 {
54 SortedLinkList sortedList = new SortedLinkList();
55 sortedList.InsertLink(54);
56 sortedList.InsertLink(48);
57 sortedList.InsertLink(2);
58 sortedList.InsertLink(45);
59 sortedList.InsertLink(13);
60 sortedList.InsertLink(28);
61 sortedList.InsertLink(85);
62 sortedList.Display();
63 Console.ReadKey();
64 }
65 }
2 class Link
3 {
4 public int data;
5 public Link next;
6 public Link(int data)
7 {
8 this.data=data;
9 }
10 }
11 class SortedLinkList
12 {
13 public Link Head;
14 public SortedLinkList()
15 {
16 Head=null;
17 }
18 public void InsertLink(int data)
19 {
20 Link newLink = new Link(data);
21 if(Head==null)
22 Head=newLink;
23 else
24 {
25 Link previous=Head;
26 Link current =Head;
27 while (current!=null && data>current.data)
28 {
29 previous=current;
30 current=current.next;
31 }
32 if(current==Head)
33 Head=newLink;
34 else
35 previous.next=newLink;
36 newLink.next=current;
37 }
38
39 }
40 public void Display()
41 {
42 Link current = Head;
43 while(current!=null)
44 {
45 Console.WriteLine(current.data);
46 current=current.next;
47 }
48 }
49 }
50 class SortedLinkListApp
51 {
52 static void Main()
53 {
54 SortedLinkList sortedList = new SortedLinkList();
55 sortedList.InsertLink(54);
56 sortedList.InsertLink(48);
57 sortedList.InsertLink(2);
58 sortedList.InsertLink(45);
59 sortedList.InsertLink(13);
60 sortedList.InsertLink(28);
61 sortedList.InsertLink(85);
62 sortedList.Display();
63 Console.ReadKey();
64 }
65 }

浙公网安备 33010602011771号