更多课程 选择中心

C/C++培训
达内IT学院

400-996-5531

在C++开发中vector如何进行局部排序

  • 发布:C++培训
  • 来源:网络
  • 时间:2019-01-15 13:10

在C++开发中vector如何进行局部排序

对于vector的全体排序,我们知道sort(vv.begin(),vv.end())来进行的。

但是对于如果是局部排序的话,比如,vector有100个元素,但我只想对10-80之间的数进行排序,如何处理?

这里考虑使用迭代器,一个迭代器指向10的位置,一个迭代器指向80的位置即可:

 

#include<stdio.h>

#include<iostream>

#include<vector>

#include<stdlib.h>

#include<algorithm>

using namespace std;

int main(){

int i,j;

vector<int>vv;

for(i=0;i<100;i++){

vv.push_back(rand()%100);

}

vector<int>::iterator left,right;

left = right = vv.begin();

for(i=1;i<10;i++){

left ++;

}

for(i=1;i<80;i++){

right ++;

}

sort(left,right);

for(i=0;i<100;i++){

printf("%d ",vv[i]);

}

return 0;

}

 在php开发中vector如何进行局部排序

 

免责声明:内容和图片源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容

vector如何进行局部排序

对于vector的全体排序,我们知道sort(vv.begin(),vv.end())来进行的。

但是对于如果是局部排序的话,比如,vector有100个元素,但我只想对10-80之间的数进行排序,如何处理?

这里考虑使用迭代器,一个迭代器指向10的位置,一个迭代器指向80的位置即可:

 

#include<stdio.h>

#include<iostream>

#include<vector>

#include<stdlib.h>

#include<algorithm>

using namespace std;

int main(){

int i,j;

vector<int>vv;

for(i=0;i<100;i++){

vv.push_back(rand()%100);

}

vector<int>::iterator left,right;

left = right = vv.begin();

for(i=1;i<10;i++){

left ++;

}

for(i=1;i<80;i++){

right ++;

}

sort(left,right);

for(i=0;i<100;i++){

printf("%d ",vv[i]);

}

return 0;

}

 

 

免责声明:内容和图片源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容

预约申请免费试听课

填写下面表单即可预约申请免费试听!怕钱不够?可就业挣钱后再付学费! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:nline修饰虚函数问题的解决办法
下一篇:C++c开发-按字节对齐分析

超全的C语言标识符知识

C指针——指针类型转换

C指针——指针和结构类型的关系

C指针——数组和指针的关系

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省