[算法分析与设计] leetcode 每周一题: Find Right Interval
来源:互联网 发布:js控制浏览器最小宽度 编辑:程序博客网 时间:2024/06/02 03:02
题目链接:https://leetcode.com/problems/find-right-interval/description/
题目大意:给定一组区间(i, j),找出每一个区间“右边”最近的区间的索引
思路:
将题目给的interval 组转化为带有索引的indexIntreval组, 然后排序,接着对每个区间,遍历其右边的区间比较
代码:
/** * Definition for an interval. * struct Interval { * int start; * int end; * Interval() : start(0), end(0) {} * Interval(int s, int e) : start(s), end(e) {} * }; */class Solution {public: struct indexInterval { int start; int end; int index; indexInterval():indexInterval(-1,-1,-1){} indexInterval(int s, int e, int i): start(s), end(e), index(i) {} }; bool static compare(indexInterval a, indexInterval b) { return a.start <= b.start; } vector<int> findRightInterval(vector<Interval>& intervals) { vector<indexInterval> localSet; int len = intervals.size(); for(int i = 0; i < len; i++) { int start = intervals[i].start; int end = intervals[i].end; localSet.push_back(indexInterval(start, end, i)); } sort(localSet.begin(), localSet.end(), compare); vector<int> result(len,-1); for(int i = 0; i < len; i++) { int target = -1; for(int j = i + 1; j < len; j++) { if(localSet[j].start >= localSet[i].end) { target = localSet[j].index; break; } } result[localSet[i].index] = target; // target = -1; } return result; }};
阅读全文
0 0
- [算法分析与设计] leetcode 每周一题: Find Right Interval
- [算法分析与设计] leetcode 每周一题: 162. Find Peak Element
- [算法分析与设计] leetcode 每周一题: 135. Candy
- [算法分析与设计] leetcode 每周一题: 078. Subsets
- [算法分析与设计] leetcode 每周一题: Word Ladder
- [算法分析与设计] leetcode 每周一题: Surrounded Regions
- Leetcode Find Right Interval
- [算法分析与设计] leetcode 每周一题: 201. Bitwise AND of Numbers Range
- [算法分析与设计] leetcode 每周一题: 62. Unique Paths
- [算法分析与设计] leetcode 每周一题: 667. Beautiful Arrangement II
- [算法分析与设计] leetcode 每周一题: 215. Kth Largest Element in an Array
- [算法分析与设计] leetcode 每周一题: 053. Maximum Subarray
- [算法分析与设计] leetcode 每周一题: 467. Unique Substrings in Wraparound String
- [算法分析与设计] leetcode 每周一题: 126. Word Ladder II
- [算法分析与设计] leetcode 每周一题: 335. Self Crossing
- [算法分析与设计] leetcode 每周一题: Set Matrix Zeroes
- [算法分析与设计] leetcode 每周一题: 542. 01 Matrix
- [算法分析与设计] leetcode 每周一题: 007. Reverse Integer
- Nginx和Tomcat集群部署
- source insight 高亮显示字符串的引用情况
- [leetcode] 442. Find All Duplicates in an Array
- bzoj 4417: [Shoi2013]超级跳马(矩阵合并+快速幂)
- 栈和队列的应用
- [算法分析与设计] leetcode 每周一题: Find Right Interval
- Linux gensub函数用法
- 数据仓库与联机分析处理笔记
- hdu_2004 成绩转换
- 因子分析(Factor Analysis Model)算法推导
- Ubuntu下Nginx配置Https
- ActiveMQ消息持久化
- C++运算符
- 使用rvest包抓取新浪财经A股交易数据