#1
算法讲究的复杂度是啥?
时空复杂度
时间
空间
每道算法题多思考优化复杂度
#2
计算机解决问题有什么技巧么?
没有,听一句话!就是穷举!
算法设计就是先思考 穷举,然后再聪明地穷举!
不信?看看动态规划。
列出状态转变方程,就是在解决如何穷举,
备忘录,DP table就是追求 聪明地穷举,用空间换取时间。
比如,回溯算法,就是决策树的遍历问题,也就是穷举,只是不像动态规划一样,具有重叠的子问题
#3
算法从 二叉树 开始学习比较好,为什么?
可以了解递归?
#4
数据结构有哪些?数据结构有哪些操作?
增删改查
上述的复杂度?
#5
基本物理数据结构为?
数组和链表
连续和非连续
#6
逻辑数据结构?
树,堆,哈希表
#7
树里面有什么重点?
二叉搜索树,多路搜索树:B树和B+树,红黑树
具体是?
#8
树的遍历?
前中后序遍历?
前序遍历的代码在进入某一个节点之前的那个时间点执行,后序遍历的代码在某个节点之后的那个时间点执行。
代码?
#9
根据任意两种遍历次序,能推断出另外一种遍历次序么?
不一定,哪两种可以?
#10
双指针算法题有哪两种类型?
快慢指针:链表环问题、链表中点问题。。
左右指针:二分搜索
#11
我采用的二分模板?
需要的话,私信补充。