问题等价于:给定一组区间,问最多保留多少个区间,可以让这些区间之间互相不重叠。
暴力解法:找出所有子区间的组合,之后判断是否重叠O((2^n)*n)
先要排序,方便判断是否重叠。
按照开始位置排序。
动态规划
类比于:最长上升子序列
贪心算法
按照区间的结尾排序。每次选择结尾最早的(留给后面的空间就越大),且和前一个区间不重叠的区间
Java——贪心算法与动态规划之间的关系(Leecode435)
最新推荐文章于 2020-12-20 16:54:53 发布
问题等价于:给定一组区间,问最多保留多少个区间,可以让这些区间之间互相不重叠。
暴力解法:找出所有子区间的组合,之后判断是否重叠O((2^n)*n)
先要排序,方便判断是否重叠。
按照开始位置排序。
动态规划
类比于:最长上升子序列
贪心算法
按照区间的结尾排序。每次选择结尾最早的(留给后面的空间就越大),且和前一个区间不重叠的区间