数据结构算法有哪些以及其各自时间复杂度
1. 数据结构:
1. 链表:链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。
时间复杂度:O(n)
2. 栈:栈是一种遵从后进先出原则的有序集合。它只能在一端进行压栈和弹栈的动作。
时间复杂度:O(1)
3. 队列:也叫FIFO(First In First Out)即先进先出,也就是说最早加入到队列中的数据将会首先被取出使用。
时间复杂度: O(1)
4. 散列表/哈希表: 具有快速存取特性,以key-value形式存储数据,key与value之间由hash函数映射联系在一起。
时间复杂度: O(1)
5. 二叉树: 由n个节点形成了一个完整的二叉树,二叉树中所有节点都有且仅有两个子节点,并遵循左子节 < 父节 < 右子节 的大小关系。
时间复杂度: O(log n)
6. 堆: 堆是一个完全二叉树,并满足堆性质 ( 最大堆/ 最小堆 ) ,也就是该子树上所有不相同位之间都要遵循大小性原理 ( 大->左; 小->右 ) .
时间复杂度 : O ( log n )
7. 图 : 图由图中所包含的不同对立集合联立而成 , 这些集合被成为图中不吜相对立都对立集 , 这釛对立難之割必要包含图中不止相对立都信心 .
时间复杂度 : O ( V + E )
创作工场
免责声明:
以上内容除特别注明外均来源于网友提问,创作工场回答,未经许可,严谨转载。
点击这里>>使用🔥专业版,更聪明、更完整、更原创!