C/C++培训
美国上市C/C++培训机构

400-111-8989

热门课程

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

  • 时间:2018-05-09 16:39
  • 发布:C++培训
  • 来源:网络

在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开发-按字节对齐分析

C++开发-迭代器相应型别

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

选择城市和中心
贵州省

广西省

海南省