- 主页/
- 第一题这样做有问题吗 各位大神指教下 我是不是理解错题目意思
第一题这样做有问题吗 各位大神指教下 我是不是理解错题目意思
发布于 2017-03-31 02:19
1919 次浏览
0 赞
最后一次编辑是 2017-03-31 03:06
来自 笔试面试
// Time Complexity: O(n), Space Complexity O(1) pair<int, int> findrange(vector<int> v){ int start = 0; // index begins to increase int len = 0; // max length we have got so far int i = 0; pair<int, int> res = make_pair(-1,-1); // if no solution, return (-1,-1) while(i < v.size()){ if(i+1 < v.size() && v[i+1] < v[i]){ // decreasing i++; continue; } start = i; // begin to increase while(i+1 < v.size() && v[i+1] > v[i]){ // increasing i++; } if(i == v.size()-1) break; while(i+1 < v.size() && v[i+1] < v[i]){ // decreasing i++; } if(i - start > len){ // update len = i - start; res = make_pair(start, i); } if(i == v.size()-1) break; } return res; }
添加回复