C# 哈希表,队列,栈

哈希表-

不规定长度,不规定类型,不规定键的类型

Hashtable ht = new Hashtable();
ht[‘a‘] = 1;
ht[0] = "b";
ht["b"] = ‘c‘;
ht[1] = "d";
//ht.Add(1, "d");
ht[1] = "x";
foreach (var x in ht.Keys)       keys,键    value,值
{
Console.WriteLine(x);
}

队列-

先进先出

Queue line = new Queue();

line.Enqueue("");

Console.WriteLine(line.Dequeue());

栈-

先进后出

Stack<string> st = new Stack<string>();

st.Push("");

Console.WriteLine(st.Pop());

class lei{

  puplic int i=1;

}

结构体

struct jie{

  puplic int j;

}

枚举

enum Week
{
星期一,
星期二,
星期三,
星期四,
星期五,
星期六,
星期天
}

结构体实例化
Lei l1 = new Lei();
Jie j1 = new Jie();
l1.i = 2;
j1.j = 1;
枚举类型
Week w1 = new Week();

时间: 2024-10-21 20:15:05

C# 哈希表,队列,栈的相关文章

2017年11月4日 vs类和结构的区别&amp;哈希表&amp;队列集合&amp;栈集合&amp;函数

类和结构的区别 类: 类是引用类型在堆上分配,类的实例进行赋值只是复制了引用,都指向同一段实际对象分配的内存 类有构造和析构函数 类可以继承和被继承 结构: 结构是值类型在栈上分配(虽然栈的访问速度比较堆要快,但栈的资源有限放),结构的赋值将分配产生一个新的对象. 结构没有构造函数,但可以添加.结构没有析构函数 结构不可以继承自另一个结构或被继承,但和类一样可以继承自接口 //哈希表 //不规定长度 不规定类型 不规定建类型 //Hashtable j = new Hashtable(); //

C# 哈希表&amp;列队&amp;栈

哈希表://不规定类型,不规定长度,不规定键值 Hashtable ht = new Hashtable();  //定义 ht[1] = 1; ht['a'] = "abc"; ht["ab"] = 'a'; ht[3.14] = 1.14; ht.Add(2, "qwerty");  //添加元素 ht.Remove('a');  //删除元素 foreach (var x in ht.Values) { Console.WriteLine(

php扩展开发-哈希表

什么是哈希表呢?哈希表在数据结构中也叫散列表.是根据键名经过hash函数计算后,映射到表中的一个位置,来直接访问记录,加快了访问速度.在理想情况下,哈希表的操作时间复杂度为O(1).数据项可以在一个与哈希表长度无关的时间内,计算出一个值hash(key),在固定时间内定位到一个桶(bucket,表示哈希表的一个位置),主要时间消耗在于哈希函数计算和桶的定位. 在分析PHP中HashTable实现原理之前,先介绍一下相关的基本概念: 如下图例子,希望通过人名检索一个数据,键名通过哈希函数,得到指向

普通集合和泛型集合的区别,哈希表和字典表的区别,队列和堆栈的区别以及堆和栈的区别。

普通集合和泛型集合的区别: 泛型集合与传统集合相比 类型更安全. 泛型集合无需装箱拆箱操作. 泛型的重要性. 泛型是未来五年的主流技术 ... 通常情况下,建议您使用泛型集合,因为这样可以获得类型安全的直接优点而不需要从基集合类型派生并实现类型特定的成员.此外,如果集合元素为值类型,泛型集合类型的性能通常优于对应的非泛型集合类型(并优于从非泛型基集合类型派生的类型),因为使用泛型时不必对元素进行装箱. 下面的泛型类型对应于现有的集合类型: List 是对应于 ArrayList 的泛型类. Di

栈、队列、哈希表的特性

栈是一种特殊的线性表,它只在线性表的一端进行插入和删除操作.栈中允许插入.删除的这一端称为栈顶,另一个固定端称为栈底.当表中没有元素时称为空栈.其特点是先进后出或后进先出. 队列是一种只允许在标的一端插入,在另一端删除的存取首先得线性表.允许插入的一端称为队尾,允许删除的一端称为对头:不含任何数据元素的队列称为空队列.其特点是先进先出. 哈希表是一种高效的数据结构.它的最大优点就是把数据存储和查找所消耗的时间大大降低,几乎可以看成是常数时间:而代价仅仅是消耗比较多的内存.然而在当前可利用内存越来

哈希表,队列集合,栈集合,自定义函数

1  1)哈希表 定义:(不规定长度,不规定类型,不规定键的类型) Hashtable  ht=new hashtable(); (点击小灯泡用using system.collection) 2)赋值: (1): ht['a']=1; ht[0]="b"; ht["b"]='c'; (2) : ht.Add(1,d);               :相当于ht[1]=d 哈希表遍历 : 1)        foreach(var x in ht.keys ) {

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.WriteL

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

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

表、栈和队列

表.栈和队列是最简单和最基本的三种数据结构——<数据结构与算法分析—— C 语言描述> 表 应用范畴: i. 多项式 ADT i. 基数排序(多趟桶式排序) 代码实现: i. 多重表 链表的游标实现 代码实现: 栈 栈又叫做 LIFO(后进先出)表——<数据结构与算法分析—— C 语言描述> 应用范畴: i. 平衡符号 i. 后缀表达式 有中缀表达式 s1 : ((2 + 3)* 8 + 5 + 3)* 6 总能转换成后缀表达式 s2 : 2 3 + 8 * 5 + 3 + 6 *