arts-2019-05-05

Algorithm 算法题

每周至少做一个leetcode 的算法题

https://leetcode-cn.com/problems/lowest-common-ancestor-of-a-binary-tree/

236. 二叉树的最近公共祖先

思路:

将二叉树转化为数组。

在数组中找到两个元素下标。

循环比较下标,(大的下标 - 1) / 2。

结果超时。。。

总结:遍历整棵树 O(n) + 找两个下标 O(n) + 循环比较 2O(logn......

2019-05-05 21:53 18

arts-2019-04-28

Algorithm 算法题

每周至少做一个leetcode 的算法题

https://leetcode-cn.com/problems/binary-tree-inorder-traversal/

94. 二叉树的中序遍历

先用递归方法做,先递归处理左边,然后是中间,然后是递归处理右边。

如果用迭代方法呢?

想了一下,需要借助一个访问节点的栈来实现:

初始化,压栈:当前节点,弹栈时可拓展左分支。

每次弹栈,可拓展左分支?

可以拓展,循环拓展,压栈,弹......

2019-04-28 23:03 20

arts-2019-04-21

Algorithm 算法题

每周至少做一个leetcode 的算法题

https://leetcode-cn.com/problems/department-top-three-salaries/

SQL 架构,困难

按部门,查出每个部门薪酬最高的三个人

核心算法是:当前比当前薪资高的人不超过“三”个

即:

from employee as e1

where

(

select count(distinct(salary))

from employee e......

2019-04-21 23:56 19