求职技术题目收集① -- 数据结构
1、具备计算机程序设计的能力,掌握一般的数据结构和算法,数据结构包括但不限于数组,链表,堆,栈,队列,树,图,hash表等。
数组:
数组时一种可以通过计算下标来访问一组变量的数据结构。一维数组可以看做是一个顺序存储结构的线性表,二维数组的定义是“其数据元素为一维数组”的线性表。
在C#中声明数组的表达式为:
int[] mat = new int[10] ; //一维
int[,] mat = new int[10,5]; //二维
int[][] a = new int[3][] ; //锯齿数组
更具体参见:http://www.cnblogs.com/kulong995/articles/1400718.html
链表:
链表是被称为节点的类对象的群集。每一个节点通过一个引用链接到列表内的后继节点上。节点包括存储数据的字段和节点引用的字段。到另外一个节点的引用被称为是链接。
更具体参见: http://www.cnblogs.com/kulong995/articles/1679936.html
堆:
堆是一种经过排序的树形数据结构,每个结点都有一个值。通常我们所说的堆的数据结构,是指二叉堆。堆的特点是根结点的值最小(或最大),且根结点的两个子树也是一个堆。
更具体见堆排序:http://www.cnblogs.com/kulong995/articles/1385635.html
栈: LIFO表,只允许在栈的一端进行操作,称为栈顶。不允许操作得一端称为栈底。
更具体见:http://www.cnblogs.com/kulong995/articles/1390617.html
队列:FIFO表,其插入和删除操作分别在两端进行。插入过程称为入队,删除过程称为出队。
更具体见:http://www.cnblogs.com/kulong995/articles/1400709.html
树:树是由n(n>=0)个节点组成的有限集合。n=0的树称为空树;对n>0的树T有:
有一个特殊的节点称为根节点(root),它只有直接后继节点,没有直接的前驱节点。
当n>1时,除根节点之外的其他节点分为m(m>=0)个互不相交的集合T1,T2,...Tm。其中每个集合Tm(1<=i && i<=m)本身又是一棵结构与树类同的子树。每棵子树的根节点有且仅有一个直接前驱节点,但可以有零或多个直接后继节点。
更具体见:http://www.cnblogs.com/kulong995/articles/1436267.html
二叉树:二叉树是n(n>=0)个节点组成的有限集合。n=0时称为空二叉树;n>0的二叉树由一个根节点和两棵互不相
交的、分别称为左子树和右子树的二叉树构成。
更具体见:http://www.cnblogs.com/kulong995/articles/1436318.html
图:图太复杂了。
更具体见:http://www.cnblogs.com/kulong995/articles/1436669.html
hash表:哈希也称为散列。是一种常见的存储数据的技术,采用这种技术可以非常迅速地插入和检索数据。
作 者:doku
出 处:http://www.cnblogs.com/kulong995/
关于作者:喜欢编程,喜欢美食,专注于.NET项目开发。
版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是作者坚持原创和持续写作的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?