时间复杂度:估算程序的执行次数(执行时间)空间复杂度:估算所需占用的存储空间 算法的优化方向:尽量少的存储空间、尽量少的执行步骤(执行时间)根据情况可以:空间换时间、时间换空间 数组的复杂度: 类型 复杂度 数组:读、写 O(1) 数组:插入、删除 O(n) 链表:读、写、插入、删除 O(n) 复杂度震荡:扩容和缩容的比例相乘等于1会造成复杂度震荡,只要相乘不等于1就好了,比如扩容2倍,缩容1/2则会造成震荡,把缩容改成1/4,且实际缩小1/2,就会避免震荡了。