贪心算法
题目
435. 无重叠区间
763.划分字母区间
56. 合并区间
对题目的想法
看起来都比较简单,属于同一类题目,先对数组进行排序然后再进行合并或者别的操作。
实现中/后的感想
- 变量名比较长的时候容易打错,比如interval就会拼错,影响代码运行和稳定性。
- 按照左边界排序时两个集合有交集的时候时常忘记两种情况, [ l 1 , r 1 ] [l_1, r_1] [l1,r1]和 [ l 2 , r 2 ] [l_2, r_2] [l2,r2],一种情况是 l 1 ≤ l 2 ≤ r 1 ≤ r 2 l_1 \le l_2 \le r_1 \le r_2 l1≤l2≤r1≤r2,另一种情况是 l 1 ≤ l 2 ≤ r 2 ≤ r 1 l_1 \le l_2 \le r_2 \le r_1 l1≤l2≤r2≤r1。这里条件判断总是会忘记第二种情况。
看完代码随想录之后的想法
- 划分字母区间的第一种解法十分巧妙,还在体会这种解法。第二种解法很好想,不过非常冗长。
- 判断两个区间的交集时可以只用一个变量来控制边界。不过一个长度为二的int数组应该也不会占用过多内存。