Merge Sort和Merge Sort分治算法:顾名思义,分而治之,就是将原问题,分割成同等结构的子问题,之后将子问题逐一解决,原问题也就得到了解决(多思考如何设计出来的)。
逆序对(1-8与8-1):暴力解法:考察每一个数对,算法复杂度O(n^2) ——> Merge Sort实现 O(nlogn)
取数组中的第n大的元素:排序,算法复杂度O(nlogn) ——>Merge Sort 实现 O(n)
稳定排序:对于相等的元素,在排序后,原来靠前的元素依然靠前。相等元素的相对位置没有发生改变。二叉搜索树(不一定是完全二叉树):二叉树,每个节点的键值大于左孩子;每个节点的键值小于右孩子;以左右孩子为根的子树仍为二分搜索树。 查找问题是计算机中非常重要的基础问题 二分查找法:对于有序数列,才能使用二分查找法(排序的作用)
二分搜索树的优势:不仅可查找数据;还可以高效地插入、删除数据——>动态维护数据;可以方便地回答很多数据之间的问题(min,max,floor,ceil,rank,select)。