| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1697 人关注过本帖
标题:迭代器中(vector<int>::iterator it)有it->start吗?
取消只看楼主 加入收藏
moox
Rank: 2
来 自:福建
等 级:论坛游民
帖 子:92
专家分:93
注 册:2017-1-21
结帖率:82.35%
收藏
已结贴  问题点数:20 回复次数:1 
迭代器中(vector<int>::iterator it)有it->start吗?
做算法题:合并间隔。答案中有个it->start,我没查到迭代器中有start的操作,是伪代码还是我真的没找到,
想想最可能是作者自己定义操作,那么要如何实现呢,求解答。
#include<iostream>
#include<vector>
using namespace std;
void insert(vector<vector<int> > &intervals,vector<int> newInterval);
vector<vector<int> > merge(vector<vector<int> > intervals)
{
    vector<vector<int> > result;
    for(int i=0;i<intervals.size();i++)
        insert(result,intervals[i]);
    return result;
}
void insert(vector<vector<int> > &intervals,vector<int> newInterval)
{
    vector<vector<int> >::iterator it =intervals.begin();
    while(it!=intervals.end())
    {
        if(newInterval.end()<it->start)
        {
            intervals.insert(it,newInterval);
            return ;
        }
        else if(newInterval.start> it->end)
        {
            it++;
            continue;
        }
        else
        {
            newInterval.start=min(newInterval.start,it->start);
            newInterval.end=max(newInterval.end,it->end);
            it=intervals.erase(it);
        }
    }
    intervals.insert(intervals.end(),newInterval);
}
int main()
{
    int a[][2]={{1,3},{6,7},{8,11},{7,10}};
    vector<vector<int> > aa;
    aa.resize(sizeof(a)/sizeof(a[0]));
    for(int i=0;i<aa.size();i++)
        aa[i].resize(2);
    for(int i=0;i<sizeof(a)/sizeof(a[0]);i++)
    {
        aa[i][0]=a[i][0];
        aa[i][1]=a[i][1];
    }
    vector<vector<int> > result=merge(aa);
    for(int i=0;i<result.size();i++)
    {

        cout<<"{"<<result[i][0]<<","<<result[i][1]<<"}"<<" ";
    }
    cout<<endl;
    return 0;
}

搜索更多相关主题的帖子: vector int start result end 
2018-02-24 15:52
moox
Rank: 2
来 自:福建
等 级:论坛游民
帖 子:92
专家分:93
注 册:2017-1-21
收藏
得分:0 
回复 2楼 rjsp
谢谢,原来是leetcode上的题。恍然大悟~
2018-02-24 17:19
快速回复:迭代器中(vector<int>::iterator it)有it->start吗?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022945 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved