线性表相关:
线性表是一种逻辑结构,相同数据类型的N个数据元素的有限序列,除了第一个元素外,每个元素有且仅有一个直接前驱,除了最后一个元素外,每个元素有且仅有一个直接后继。
线性表的特点:
1.元素个数有限
2.逻辑上元素有先后次序
3.数据类型相同
4.仅讨论元素间的逻辑关系
线性表的层次关系:
栈和队列是两种操作受限的线性表:栈的插入和删除只能在表尾端进行,即栈顶;队列只能在表尾插入元素,在表头删除元素,都可以通过顺序结构和链式结构实现,插入与删除的时间复杂度都是O(1),在空间复杂度上两者也一样。
算法复杂度的知识
算法复杂度是对一个算法进行计算的时候,存储数据需要占用一定的空间和执行计算需要耗费一定的时间的一种评价。
平时说的代码的时间复杂度指的是渐进时间复杂度:nn>n!>cn>n^c>log©n>c
稳定性
稳定性指相同元素的相对位置不会改变。其中,稳定的排序算法有冒泡排序,插入排序,归并排序,基 数排序。
适用场景: 1. 当排序个数小于50个时,适合用直接插入排序和简单选择排序,如果排序的元素太多,就不适合用 直接插入排序,因为直接插入排序需要移动元素的次数比较多ÿ