4.22 数据结构和算法总览
1.数据结构
1.1数据结构的存储方式
底层实现只有两种 数组和链表(arraylist等等本质都是链表或数组)
1.2数据结构的基本操作
增删查改(遍历+访问)
数组可以随机访问 ,快速找到对应元素,但是内存空间必须一次分配够
如果要扩容,删除 ,插入,因为要保证数据连续 所以时间复杂度为O(n)
链表在插入和删除的时间复杂度为O(1),但不能随机访问
不同的数据结构适用于不同的场景(增删查改)
1.3遍历
可以迭代遍历(for循环)
也可以递归遍历(比如链表,二叉树都可以)
1.4视角问题
可以把动态规划 回溯算法都理解成是二叉树问题
2 算法
2.1计算机算法的本质就是穷举(和学数学不一样 数学要求我们去找规律,但是计算机只要穷举即可)
穷举要无遗漏,无冗余(先思考如何去穷举,聪明的穷举)

                
            
        
浙公网安备 33010602011771号