上岸某中流985,下面主要是数据结构的核心内容:
贪心算法和动态规划的区别
贪心算法:局部最优,划分的每个子问题都最优,得到全局最优,但是不能保证是全局最优解。
动态规划:将问题分解成重复的子问题,每次都寻找左右子问题解中最优的解,一步步得到全局的最优解。
快速排序的算法思想与步骤
二分分治的思想,
对于high,首先从后半部分开始,如果扫描到的值大于基准数据就让high减1,如果发现有元素比该基准数据的值小,就将high位置的值赋值给low位置 ,结果如下:
对于low: 然后开始从前往后扫描,如果扫描到的值小于基准数据就让low加1,如果发现有元素大于基准数据的值(如上图46=>tmp),就再将low位置的值赋值给high位置的值
此外,解释一下归并排序,
稳定的算法有哪些?
归并,插入、冒泡等(记住归并即可)
解决哈希表冲突的办法
1) 线性探测法
2) 平方探测法
3) 伪随机序列法
4) 拉链法
简述 ALV算法与红黑树,B,B+
ALV即平衡二叉树,任何一节点的左子树高度与右子树高度之差不能超过1