算法与数据结构
ALey_Z
lalala
展开
-
HashSet与List的Contains方法
HashSet不能用索引访问,不能存储重复数据。 HashSet<string> hs = new HashSet<string>(); hs.Add("hahah"); Console.Write(hs[0]); //这里会报错 List<string> ls = new List<string>(); ls.Add("hhhh"); Co原创 2020-07-18 15:48:37 · 1071 阅读 · 0 评论 -
C#——数据结构(一)数组、集合
1.Array数组数组可以直接通过下标访问。 array[i]常规操作:分配存储空间。 如:声明一个数组 int[] array = new int[5]; 访问数组中的元素数据。 通过下标来获取。 int[ ] array = new int [5] {1,2,3,4,5}; int[ , ] secDimeArray = new int[2,3]; int[ ] ...原创 2018-09-01 19:42:37 · 725 阅读 · 0 评论 -
C#——数据结构(二)栈、队列、二叉树
1.Stack(先进后出)LIFO只能在栈顶进行元素的插入和删除; 内部有一个ArrayList作为储存器,p_Index永远指向栈顶; ——Push入栈 ——Pop出栈 ——Top(peek) return list[p_Index]; 复杂度:当内部list容量够用时,不需要增大容量的情况下,入栈Push为O(1),反之为O(n); 出栈始终为O(1);...原创 2018-09-15 14:16:32 · 295 阅读 · 0 评论 -
算法——常见排序算法
1.冒泡排序 /// 冒泡排序 static void BubbleSort(ref int[] array) { int temp; for (int j = array.Length-1; j &amp;gt;=1; j--) //每执行完一次外层,就算出当前最大值,然后总排序数-1 {...原创 2018-09-02 13:54:39 · 325 阅读 · 0 评论 -
C#——实现泛型顺序栈和链栈
使用C#进行了泛型栈的实现,内部以List&amp;lt;&amp;gt;作为储存器; class CStack&amp;lt;T&amp;gt; { int p_Index; List&amp;lt;T&amp;gt; list; //构造方法 public CStack() { list原创 2018-09-11 15:31:35 · 454 阅读 · 0 评论 -
C#——实现泛型List
C#用数组实现List&lt;&gt; class Program { static void Main(string[] args) { MyList&lt;int&gt; myList = new MyList&lt;int&gt;(); myList.Add(20); m...原创 2018-06-12 18:01:54 · 673 阅读 · 0 评论 -
C#——实现泛型顺序队列和链式队列
顺序队列,使用List为存储器 /// 顺序队列 class MyQueue&lt;T&gt; { List&lt;T&gt; list; public MyQueue() { list = new List&lt;T&gt;(); } //入队 public...原创 2018-09-13 20:05:10 · 1213 阅读 · 0 评论 -
C#——二叉树的实现(深度及广度遍历)
二叉树的实现二叉树的结点包含data,left,right,通过一些结点之间的关系就可以构造二叉树;二叉树结点类 class Node&amp;lt;T&amp;gt; { T data; Node&amp;lt;T&amp;gt; left; Node&amp;lt;T&amp;gt; right; public原创 2018-09-14 16:19:06 · 1861 阅读 · 0 评论