当前位置: 代码迷 >> 综合 >> c#-集合
  详细解决方案

c#-集合

热度:22   发布时间:2024-01-26 15:00:01.0

 代码

using System;
using System.Collections.Generic;namespace 集合
{class Program{static void Main(string[] args){//列表.main();//队列.main();//栈.main();//链表.mian();//有序链表.mian();//字典.mian();有序字典.mian();//集.mian();Console.ReadLine();}}class 列表{public void 函数(){Console.WriteLine("中文函数名");}public static void main(){Console.WriteLine("\n列表");var list1 = new List<int>();list1.Add(2);list1.Add(5);list1.Insert(0, 3);list1.Insert(2, 7);Console.WriteLine("3的位置:"+list1.IndexOf(3, 0));Console.WriteLine("列表");foreach (int i in list1){Console.WriteLine(i);}list1.Sort();Console.WriteLine("排序后的列表");foreach (int i in list1){Console.WriteLine(i);}list1.RemoveRange(0, 2);list1.RemoveAt(0);Console.WriteLine("删除后的列表");for (int i = 0; i < list1.Count; i++){Console.WriteLine(list1[i]);}}}class 队列{public static void main(){var query = new Queue<int>();query.Enqueue(5);query.Enqueue(7);query.Enqueue(3);while (query.Count > 0){int a = query.Dequeue();Console.WriteLine(a);}}}class 栈{Stack<int> mStacks = new Stack<int>();public static void main(){栈 a = new 栈();a.mStacks.Push(5);a.mStacks.Push(7);a.mStacks.Push(3);Console.WriteLine("pop前的栈");a.play();a.mStacks.Pop();Console.WriteLine("pop后的栈");a.play();int b = a.mStacks.Peek();Console.WriteLine("Peek:" + b);Console.WriteLine("Peek后的栈");a.play();bool ishas = a.mStacks.Contains(5);Console.WriteLine("Contains:" + ishas);}private void play(){foreach(int i in mStacks){Console.WriteLine(i);}}}class 链表{static LinkedList<int> mLinkLists = new LinkedList<int>();public static void mian(){mLinkLists.AddFirst(5);mLinkLists.AddLast(7);LinkedListNode<int> a = mLinkLists.Find(5);mLinkLists.AddAfter(a, 3);mLinkLists.AddBefore(a, 1);LinkedListNode<int> fist = mLinkLists.First;Console.WriteLine("正序遍历");while (fist.Next != null){Console.WriteLine(fist.Value);fist = fist.Next;}Console.WriteLine(fist.Value);Console.WriteLine("倒序遍历");LinkedListNode<int> last = mLinkLists.Last;while (last.Previous != null){Console.WriteLine(last.Value);last = last.Previous;}Console.WriteLine(last.Value);}}class 有序链表{static SortedList<int, int> mKeyValues = new SortedList<int, int>();public static void mian(){mKeyValues.Add(3, 1);mKeyValues.Add(1, 7);mKeyValues.Add(2, 5);Console.WriteLine("keys");foreach(int i in mKeyValues.Keys){Console.WriteLine(i);}Console.WriteLine("Values");foreach (int i in mKeyValues.Values){Console.WriteLine(i);}}}class 字典{public static void mian(){Console.WriteLine("Hello World!");int a = 5;a.GetHashCode();Console.WriteLine(a.GetHashCode());int b = 7;int c = 7;Console.WriteLine(b.GetHashCode());Console.WriteLine(c.GetHashCode());var dict = new Dictionary<int, string>(){[3] = "three",[7] = "seven"};foreach (var i in dict.Keys){Console.WriteLine(i);}foreach (var i in dict.Values){Console.WriteLine(i);}}}class 有序字典{public static void mian(){var sortDictionary = new SortedDictionary<int, int>();sortDictionary.Add(1, 2);sortDictionary.Add(2, 1);Console.WriteLine("Keys");foreach (var i in sortDictionary.Keys){Console.WriteLine(i);}Console.WriteLine("Values");foreach (var i in sortDictionary.Values){Console.WriteLine(i);}}}class 集{static HashSet<int> ts = new HashSet<int>();static SortedSet<int> vs = new SortedSet<int>();public static void mian(){ts.Add(1);ts.Add(2);ts.Add(2);Console.WriteLine("HashSet");hashDisplay();vs.Add(2);vs.Add(2);vs.Add(1);Console.WriteLine("SortedSet");hashDisplay();}private static void hashDisplay(){foreach(int i in ts){Console.WriteLine(i);}}private static void sortDisplay(){foreach (int i in vs){Console.WriteLine(i);}}}
}

运行效果

列表

列表
3的位置:0
列表
3
2
7
5
排序后的列表
2
3
5
7
删除后的列表
7

 队列

5
7
3

 栈

pop前的栈
3
7
5
pop后的栈
7
5
Peek:7
Peek后的栈
7
5
Contains:True

链表

正序遍历
1
5
3
7
倒序遍历
7
3
5
1

有序链表

keys
1
2
3
Values
7
5
1

 字典

Hello World!
5
7
7
3
7
three
seven

有序字典

Keys
1
2
Values
2
1

集

HashSet
1
2
SortedSet
1
2

 

  相关解决方案