arts-2019-05-26

Algorithm 算法题

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

https://leetcode-cn.com/problems/distant-barcodes/

1054. 距离相等的条形码

给定的数组经重排以后相邻的两个数不相等。

所以一个想法就是让相同的数间隔着,继而发现最好出现次数多的先进行排序。

算法描述为:

先遍历一遍,生成元素和出现的次数。

初始化结果集,便于处理。

按出现的次数倒排:

按 0、2、4 间隔的位置安排,如果......

2019-05-26 22:40 11

arts-2019-05-12

Algorithm 算法题

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

https://leetcode-cn.com/problems/merge-two-sorted-lists/

21. 合并两个有序链表

注意是有序的。怎么保证有序呢?

最直接的想法,循环遍历两个链表,按值大小新生成一个列表。然后按列表重新生成一遍链表。时间复杂度 O(m + n + m + n)。

然后发现,其实每一步都是比较两个 Node,把值较小的或者不为空的节点排在前面。于是,可以......

2019-05-19 23:58 17

arts-2019-05-19

Algorithm 算法题

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

https://leetcode-cn.com/problems/the-skyline-problem/

218. 天际线问题

只考虑左右节点,才可能发生变化。

维护当前最大高度数组(堆),左节点高度加进来,右节点高度去掉。

当前高度为最大高度,如果与上次高度不同,记录一下。

Review 外国文章

阅读并点评至少一篇英文技术文章

http://antirez.com/news/129

......

2019-05-19 23:58 10