Status 的英文意思是状态。这里的Status是一个结构或变量类型。Status ,status Linklist_L(Linklist &L,int i,...) 的函数类型是Status,即函数调用结果要送返状态值,例如成功失败。
数据结构即一个数据由那些成分数据构成,以什么方式构成,呈什么结构, 数据结构是信息的一种组织方式,其目的是为了提高算法的效率,它通常与一组算法的集合相对应,通过这组算法集合可以对数据结构中的数据进行某种操作。
数据结构有逻辑上的数据结构和物理上的数据结构之分,集合结构是数据结构中的元素之间除了同属一个集合”的相互关系外,别无其他关系,线性结构的数据结构中的元素存在一对一的相互关系,树形结构的数据结构中的元素存在一对多的相互关系。
逻辑上的数据结构反映成分数据之间的逻辑关系,而物理上的数据结构反映成分数据在计算机内部的存储安排,数据元素相互之间的关系称为结构有四类基本结构为集合、线性结构、树形结构、图状结构。
学习数据结构和算法的过程,是非常好的思维训练的过程,所以,千万不要被动地记忆,要多辩证地思考,多问为什么。如果你一直这么坚持做,你会发现,等你学完之后,写代码的时候就会不由自主地考虑到很多性能方面的事情,时间复杂度、空间复杂度非常高的垃圾代码出现的次数就会越来越少。
学算法,需要的是学,思考,比如,为什么插入排序比冒泡排序好一些,为什么海量数据,快排比堆排好一些,前缀树空间占用过大怎么办,KNN算法如何调优,每个算法,背后都有它很多需要思考的问题。写出算法不难,难的是深挖算法后面的问题。
邻接矩阵判断连通性迅速,并可以进行矩阵运算解决一些问题,但是如果图比较稀疏的话很耗费空间。邻接表比较节省空间,但是很多操作的效率上肯定比不过邻接矩阵。散列表就是通过散列函数把键映射到一个大数组里。而且对于解决散列冲突的方法,拉链法需要链表特性,操作简单,但需要额外的空间存储指针;线性探查法就需要数组特性,以便连续寻址,不需要指针的存储空间,但操作稍微复杂些。