C#基础知识(九)队列、栈、链表
来源:互联网 发布:sai绘画软件下载 编辑:程序博客网 时间:2024/06/06 02:04
队列(Queue):先进先出
举例:
static void Main(string[] args)
{
Queue q = new Queue();
q.Enqueue('A'); //插入队列
q.Enqueue('B');
q.Enqueue('C');
foreach (char c in q)
Console.Write(c + " "); //输出 A B C
q.Dequeue(); //从队列中移除(先进先出)
Console.WriteLine();
foreach (char c in q)
Console.Write(c + " "); // 输出B C
Console.ReadLine();
}
栈(Stack):后进先出
static void Main(string[] args)
{
Stack q = new Stack();
q.Push('A'); // 压入栈
q.Push('B');
q.Push('C');
foreach (char c in q)
Console.Write(c + " "); // 输出 C B A
q.Pop(); // 栈中移除
Console.WriteLine();
foreach (char c in q) // 输出B A
Console.Write(c + " ");
Console.ReadLine();
}
链表(LinkedList):前后相关连
static void Main(string[] args)
{
LinkedList<string> linked = new LinkedList<string>();
linked.AddFirst("first"); // 插入到开头
linked.AddLast("end");// 插入到结尾
foreach (string s in linked)
{
Console.Write(s + " "); // first end
}
Console.WriteLine();
linked.AddAfter(linked.Find("first"), "AddAfterfirst"); // 插入指定的first后
linked.AddBefore(linked.Find("first"), "AddBeforefirst");// 插入指定的first前面
foreach (string s in linked)
{
Console.Write(s + " ");//AddBeforefirst first AddAfterfirst end
}
Console.ReadLine();
}
- C#基础知识(九)队列、栈、链表
- C#基础知识之九
- C#基础知识(九)—— 字符串的使用
- MakeFile基础知识(九)
- java基础知识(九)
- 栈和队列基础知识
- 链栈和队列基础知识
- 优先队列基础知识(一)
- [C# 基础知识系列]专题九: 深入理解泛型可变性
- C#基础知识(一)
- c#基础知识(二)
- C#基础知识(六)
- Oracle基础知识(九) - Oracle中的NULL
- 黑马程序员---java基础知识(九):GUI
- 密码学基础知识(九)密钥管理
- C语言基础知识之(九):函数
- 基础知识(九)boost+vs2015安装配置
- JAVA基础知识整理(九) ---计算机网络
- Ini文件遍历
- 文章标题
- Android 计算器 sin cos tan 值问题
- 【Java并发编程】之四:守护线程与线程阻塞的四种情况 (r)
- tableView的Cell调整imageView的大小
- C#基础知识(九)队列、栈、链表
- c语言strcpy和memcpy
- java中数组与容器的区别
- 92.leetcode Reverse Linked List II(medium)[链表逆序]
- 传智播客推出少儿教育品牌-酷丁鱼
- 【Java并发编程】之五:volatile变量修饰符—意料之外的问题(含代码)(r)
- TRANSFORM_TEX
- LeetCode | Largest Rectangle in Histogram
- C++ 非托管COM在C#下调用的问题