Stack集合 Queue队列集合 Hashtable哈希表

Stack集合 干草堆集合 栈集合
栈;stack,先进后出,一个一个赋值,一个一个取值,安装顺序来.
属性和方法
实例化 初始化
Stack st = new Stack();

添加元素

 1  个数
 2             Console.WriteLine(st.Count);
 3             只要使用一次pop方法,就会从最后一个元素开始排除 弹出
 4             Console.WriteLine(st.Pop());
 5             Console.WriteLine(st.Count);
 6             只想查看不弹出
 7             Console.WriteLine(st.Peek());
 8             foreach(int aa in st)//遍历集合
 9             {
10                 Console.WriteLine(aa);
11             }
12             Console.WriteLine(st.Count);

个数
Console.WriteLine(st.Count);
只要使用一次pop方法,就会从最后一个元素开始排除 弹出
Console.WriteLine(st.Pop());
Console.WriteLine(st.Count);
只想查看不弹出
Console.WriteLine(st.Peek());
foreach(int aa in st)//遍历集合
{
 Console.WriteLine(aa);
}
Console.WriteLine(st.Count);

Queue队列集合

先进先出
实例化 初始化
Queue que = new Queue();
添加元素
que.Enqueue(5);
que.Enqueue(2);
que.Enqueue(9);
que.Enqueue(8);
que.Enqueue(1);
移除一个元素 从头开始
que.Dequeue();

个数
Console.WriteLine(que.Count);

foreach(int aa in que)
{
 Console.WriteLine(aa);
}

Hashtable哈希表
先进后出,一个一个赋值,但只能一起取值

实例化 初始化
Hashtable ht = new Hashtable();

添加元素

1 ht.Add(1, "张三");
2             ht.Add(2, "李四");
3             ht.Add(3, "王五");
4             ht.Add(4, "赵六");
5             ht.Add(5, "丰七");
6             ht.Add(6, "钱八");

读取

1 foreach (int aa in ht.Keys)//单纯的存储key的集合
2             {
3                 Console.WriteLine(aa);
4             }
5             foreach (string bb in ht.Values)
6             {
7                 Console.WriteLine(bb);
8             }

使用枚举类型进行读取,排列成表格

1 IDictionaryEnumerator ide = ht.GetEnumerator();
2             while (ide.MoveNext())
3             {
4                 Console.WriteLine(ide.Key + "\t" + ide.Value);
5             }
时间: 2024-10-11 11:53:18

Stack集合 Queue队列集合 Hashtable哈希表的相关文章

如何使用C#的Hashtable[哈希表]

在C#编程中经常需要对一些键值对进行处理,一般我们可以使用字典或哈希表来实现.和字典比起来,哈希表占用系统资源更少更为方便. 下面举例说明哈希表的常用方法: 1, 添加元素: 2, 删除元素: 3, 遍历: 4, 查询. 步骤阅读 工具/原料 Microsoft Visual Studio 2010 方法/步骤 1 打开Microsoft Visual Studio 2010, 新建名字为[哈希表]的程序. 2 在新程序界面空白窗口上放置合适的控件:包括, 显示操作流程的textbox控件: 添

58. C# -- 集合(动态数组,哈希表,排序列表,堆栈,队列,点阵列)

一.先来说说数组的不足(也可以说集合与数组的区别): 1.数组是固定大小的,不能伸缩.虽然System.Array.Resize这个泛型方法可以重置数组大小,但是该方法是重新创建新设置大小的数组,用的是旧数组的元素初始化.随后以前的数组就废弃!而集合却是可变长的 2.数组要声明元素的类型,集合类的元素类型却是object. 3.数组可读可写不能声明只读数组.集合类可以提供ReadOnly方法以只读方式使用集合. 4.数组要有整数下标才能访问特定的元素,然而很多时候这样的下标并不是很有用.集合也是

关于“堆栈集合”、“队列集合”;SortedList、SortedList<T>;

1.堆栈集合(stack.stack<T>) 逻辑:先进后出(ufo)Last in First Out 2.队列集合(Queue.Queue<T>) 逻辑:先进先出(FIFO)First in First Out 3.其他集合

[笔记]python数据结构之线性表:linkedlist链表,stack栈,queue队列

python数据结构之线性表 python内置了很多高级数据结构,list,dict,tuple,string,set等,在使用的时候十分舒心.但是,如果从一个初学者的角度利用python学习数据结构时,这些高级的数据结构可能给我们以迷惑. 比如,使用list实现queue的时候,入队操作append()时间复杂度可以认为是O(1),但是,出队操作pop(0)的时间复杂度就是O(n). 如果是想利用python学学数据结构的话,我觉得还是自己实现一遍基本的数据结构为好. 1.链表 在这里,我想使

源码:Java集合源码之:哈希表(二)

要想知道一个元素是否在数组或链表中,只能从前向后挨个对比,无论是数组还是链表,其对数据的查询表现都比较无力.在的二叉排序树中,还会将数据排序以进行二分查找,将时间复杂度从O(n)降低到O(lg n). 出现这个问题的根源在于,我们没有办法直接根据一个元素找到它存储的位置. 那有没有办法消除这个对比的过程呢?哈希表就是解决查询问题的一种方案. 什么是哈希表与Hash函数 通俗来讲,哈希表就是通过关键字来获取数据的一种数据结构,它通过把关键字映射为表中的位置来获取元素,这种映射主要是使用Hash函数

检索 04 --Stack栈 Queue队列 Hashtable哈希表

//Stack 先进后出 没有索引 Stack st = new Stack(); st.Push(12); st.Push(11); st.Push(22); st.Push(34); st.Push(56);//从栈顶部插入 56应该在栈的最上部 Console.WriteLine(st.Peek());//st.Peek(); 返回栈的顶部数据 但是不移除 56 Console.WriteLine(st.Pop());//st.Pop(); 移除并返回栈的顶部数据值 56 object[]

Stack 栈 ----Queue 队列

 一.概念 栈 Stack 先进后出的结构,队列 Queue 先进先出的结构 如图: 二 . 实现 实现如上两个数据结构. 首先动手之前,Framework Design Guidelines这本书告述我们,在设计API或者实现类的时候,应当围绕场景编写API规格说明书. 1.1 实现栈      对于栈提供 Stack<T>         :    创建一个 栈 void Push(T s)  :   插入一个元素 T Pop ()           :   推出最上的元素,删除并且返回

手工 stack栈 queue队列 priority queue 优先队列 模板

栈stack: 1 struct sta 2 { 3 int sz[100001]; 4 int top() 5 { 6 return sz[top]; 7 } 8 void push(int x){ 9 sz[++top]=x; 10 } 11 void pop(){ 12 if(top>0) 13 top--; 14 } 15 void cl() 16 { 17 top=0; 18 } 19 int size(){ 20 return top; 21 } 22 }stack;

特殊集合(stack、queue、hashtable的示例及练习)

特殊集合:stack,queue,hashtable stack:先进后出,一个一个的赋值一个一个的取值,按照顺序. .count           取集合内元素的个数 .push()         将元素一个一个推入集合中 .pop()           将元素一个个弹出集合 .clear()         清空集合 queue:先进先出,一个一个的赋值一个一个的取值,按照顺序. .count              取集合内元素的个数 .Enqueue()      进队列集合 .