Amusing Algorithmic Questions
2017-11-26 本文已影响0人
多科
记录一些自己觉得有趣的算法题。何谓有趣?叙述简单、有思维难度但不至于太难。
- 给一个数字n, 构造一颗以1...n为元素的完全二叉排序树(Complete Binary Search Tree)。比如 n= 3, 那么返回数组[2, 1, 3], 对应的CBST如下:
2
/ \
1 3
- 如何只利用加法和减法来实现二分查找? Hint: 1. 不是用加法和减法去模拟二分查找中需要的除法,而是用加减法构造一个指数级变化的数列。2. 比较方法可以用比较运算符,别想歪了。