Map、Dictionary、HashTable有哪些异同 2023-04-19 689 dictionary 跟 map 其实是同一个东西,只是在不同场合叫法不同。dictionary 的中文是字典,map 在中文是映射,也有地图的意思。查字典,查地图,都是通过某个信息,去找到另一个信息 …
为什么说“满二叉树也是完全二叉树” 2023-04-19 752 因为国内早期教材中,满二叉树一般指 perfect binary tree,所以会有满二叉树是完全二叉树的一个特例的说法。类似的情况可能还有树的深度的定义,有的根结点从0开始计数,有的从1开始计数。 …
堆内存和数据结构堆之间的关系是什么 2023-04-19 712 数据结构中的堆和内存中的堆是两个完全不同的概念。它们除了名字一样没有什么必然的联系。就跟苹果一样,一个是水果一个是品牌。前者是组织数据的一种手段(或者叫工具),后者只是指明数据存储在哪种内存区之上。 …
数据结构的主要内容有哪些 2023-04-19 709 数据结构的主要内容有:1、基本概念和术语;2、逻辑结构和物理结构(存储结构);3、抽象数据类型。其中,数据是描述客观事物的符号,是计算机可以操作的对象,是能被计算机识别,并输入到计算机处理的符号集合。 …
数据库系统的实现中采用了哪些常用的数据结构 2023-04-19 699 数据库系统的实现中采用的数据结构有:线性表,还可细分为顺序表、链表、栈和队列;树结构,包括普通树,二叉树,线索二叉树等;图存储结构。其中,线性表结构存储的数据往往是可以依次排列的,就像小朋友手拉手。 …
为什么汽车行业没有敏捷开发的说法,而是ASPICE的V型开发模型 2023-04-19 785 首先汽车行业没有敏捷开发的说法是错误的,敏捷开发这个理念也适用于汽车软件的开发,更有理念的坚定支持者,比如特斯拉,把敏捷开发的理念贯彻到整车的开发中(优劣先不评判)。 一、为什么汽车行业没有敏捷开发的 …
哈希表针对冲突的两种方式优缺点是什么 2023-04-19 667 哈希表针对冲突的两种方式优缺点是,开放散列(open hashing)/ 拉链法(针对桶链结构)对于记录总数频繁可变的情况,处理的比较好(也就是避免了动态调整的开销);封闭散列(closed hash …
wait-free是指什么 2023-04-19 695 wait-free是指指一个线程能够在有限步内make progress。对于一个算法,Obstruction-freedom(无障碍)/Lock-freedom(无锁)/Wait-freedom(无 …
程序为什么要编译为语法树而不是语法列表或语法图 2023-04-19 614 三种都有用。而且数据结构的本质区别,决定了这三种数据结构的适用范围。树相比起图,每个节点都至多有一个父节点。这导致,图可以很简单的表示sharing:当一个节点有多个父节点的时候,就被重复使用了。 一 …
最小生成树的prim算法和Kruskal算法的区别 2023-04-19 681 Kruskal算法是一种贪心算法,我们将每个edge按照权重大小进行排序,每次从边集中取出权重最小且两个顶点;Prim算法是另一种贪心算法, Prim算法则是对节点进行操作。 一、最小生成树的prim …
树状数组的原理是什么 2023-04-19 604 树状数组的原理是,树状数组为了节省空间,删去了不必要的结点,将结点数压缩到与数组长度相同。方案是这样的:数组的每个位置代表其在图中垂直向上追溯可以达到的较高的结点。 一、树状数组的原理 原理 树状数组 …
二叉树、二叉查找树、二叉排序树、二叉平衡树的区别是什么 2023-04-19 696 二叉树、二叉查找树、二叉排序树、二叉平衡树的区别是二叉树:每个结点非常多 2 棵子树,没有其它限制了。二叉查找树:也叫二叉搜索树,首先它是二叉树,并且左子树上所有结点的值小于它根结点的值。 一、二叉树 …