怎么用c++vectors实现查找排序

c++实现查找排序图片

c++

2个回答

最简单的方法其实是使用头下的算法

 // sort algorithm example
#include <iostream>     // std::cout
#include <algorithm>    // std::sort
#include <vector>       // std::vector

bool myfunction (int i,int j) { return (i<j); }

struct myclass {
  bool operator() (int i,int j) { return (i<j);}
} myobject;

int main () {
  int myints[] = {32,71,12,45,26,80,53,33};
  std::vector<int> myvector (myints, myints+8);               // 32 71 12 45 26 80 53 33

  // using default comparison (operator <):
  std::sort (myvector.begin(), myvector.begin()+4);           //(12 32 45 71)26 80 53 33

  // using function as comp
  std::sort (myvector.begin()+4, myvector.end(), myfunction); // 12 32 45 71(26 33 53 80)

  // using object as comp
  std::sort (myvector.begin(), myvector.end(), myobject);     //(12 26 32 33 45 53 71 80)

  // print out content:
  std::cout << "myvector contains:";
  for (std::vector<int>::iterator it=myvector.begin(); it!=myvector.end(); ++it)
    std::cout << ' ' << *it;
  std::cout << '\n';

  return 0;
}

algorithm

pluspplus
SHA-ZI 回复changaney: 看下c++ primer吧,都有介绍
2 年多之前 回复
pluspplus
SHA-ZI 回复changaney: 这个是使用迭代器循环
2 年多之前 回复
sinat_37774736
changaney for循环里边的不太能看懂可以讲解一下吗??
2 年多之前 回复
sinat_37774736
changaney 如果实现查找功能呢,用find()吗??
2 年多之前 回复

是要自己实现vector?还是学习vector的基本用法?
如果是后者那很容易的,STL随便学学就OK了

sinat_37774736
changaney 实现vectors,得做一个实验报告
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
怎么用c++vectors实现查找排序
c++实现查找排序![图片](https://img-ask.csdn.net/upload/201705/04/1493891816_769034.png)
C实现数的查找排序
用一维数组的形式存储数据并用冒泡法实现数据的查找,排序。
用java实现排序和查找
冒泡排序 假设一个数组中有n个元素; 从数组的第一个元素开始,中是比较与后一个元素,如果前一个元素大于后一个元素,就交换位置,否则继续比较后面的元素,直到选出最大的元素。这样的排序类似于水中的冒泡,越大的泡上升的速度越快。这样一共比较n次,第i趟比较n-i-1次。 实现: package org.westos.demo; import java.util.logging.Level; publ...
c语言 查找与排序 整理 查找 排序
c语言 查找与排序 c语言 查找与排序代码整理 总结
二叉查找(排序)树排序和查找实现
你有没有面试的时候,被问到数据结构的问题,你有没有在面对需求的时候一头雾水?rn五斗米老师又出新课程了,数据结构一直是程序员的软实力,是算法课题的基础,游戏行业对其更为看重。学习C#语言之后的能力进阶,写出高效的代码,培养专业的程序设计思维,训练使用程序语言描述解决方案的能力,你如果刚好也是一枚Unity程序员,千万不要错过,绝对能帮得到你。
c程序 排序 查找
这是比较精简的几个简单的C语言程序,在比较大型的程序中可以通过调用,很快的完成相关的任务。其中还包括了字谜猜字的游戏,可谓是非常不错。
C中排序与查找
编程中的排序方法:冒泡、选择、插入、快速排序、哈希、shell等 一、冒泡排序 /*********************冒泡排序********************/ #include&amp;lt;stdio.h&amp;gt; #include&amp;lt;stdlib.h&amp;gt; #include&amp;lt;string.h&amp;gt; #include&amp;lt;unistd.h&amp;gt; #include&amp;l...
C语言的排序、查找
冒泡排序 二分法排序 快速排序 直接插入排序 希尔排序 选择排序 堆排序 归并排序
C语言排序和查找
1.C语言选择排序算法及代码 选择排序是排序算法的一种,这里以从小到大排序为例进行讲解。 基本思想及举例说明 选择排序(从小到大)的基本思想是,首先,选出最小的数,放在第一个位置;然后,选出第二小的数,放在第二个位置;以此类推,直到所有的数从小到大排序。 在实现上,我们通常是先确定第i小的数所在的位置,然后,将其与第i个数进行交换。 下面,以对 3  2  4  1 进行选择
排序与查找之线性查找篇(C语言实现)
线性查找是从某个类型的列表的表头开始依次比较目标元素与每一个值,直至找到该目标元素。其结果只有两个:要么找到目标(返回索引),要么到达列表尾并得出改组中不存在该目标的结论,下面开始实现。#include int search(int aim,int a[],int size);//声明方法 int main(){ //测试search int a[]={1,5,3,7,6,9,10}; pr
查找与排序之冒泡排序篇(C语言实现)
上节学习了二分法查找,然而二分法查找却基于排序的前提下产生,于是学习排序算法十分必要。事实上,排序算法是算法中基础的一项,下面从冒泡排序开始学习。 关于冒泡排序的实现原理不多加阐述,其实现基于相邻两数交换沉底的方法,具体自行查询百度。冒泡排序动画展示(引用至student.zjzk.cn):冒泡排序动画展示 下面实现冒泡排序: #include #include #include in
查找与排序之二分法查找篇(C语言实现)
相比线性查找,二分法查找则显得十分高效,其查找次数与总元素数量存在对数关系,即只要较少的查找次数就可以完成快速地搜索。下面实现二分法查找: 原理:在进行二分法查找前需要先对数据进行排序(具体排序实现详见下一篇文章),定义left(数据集的开头),right(数据集结尾)两个变量,然后在这组数据中找到mid=(left+right)/2,然后将待查找元素与mid所指元素进行比较,如果相等将索引返回
c语言实现电子辞典的排序查找
c++中的MFC模块编程制作电子辞典,并实现电子辞典的排序,查找
排序和查找实现适配器模式
现有一个接口DataOperation定义了排序方法sort(int[]) 和查找方法search(int[], int),已知类QuickSort的quickSort(int[])方法实现了快速排序算法,类BinarySearch 的binarySearch (int[], int)方法实现了二分查找算法。现使用适配器模式设计一个系统,在不修改源代码的情况下将类QuickSort和类BinarySearch的方法适配到DataOperation接口中。绘制类图并编程实现。(要求实现快速排序和二分查找)
vectors和iterators用的人多吗?
这两个东西以前没接触过rn最近看C++ Primer看到的rn书中极力推荐用这两个东西(--b)代替数组和指针rn我感觉好是好,但是失去了对内存的直接操控rnrn不知道高手们都是用什么的,有必要用这两个东西吗?
查找结构体向量变量(Vectors, structs and find)
如果建立了结构体向量,如何查找结构体向量中某变量值所在的向量单元。简单地说,就是结构体向量中有ID和数值,如果根据查找ID来更改数值呢?
C语言排序查找源代码
C语言排序查找源代码,总结了常见的方法以及代码实现,
排序、查找、二叉树遍历(c语言)
排序算法、查找算法、二叉树遍历算法(c语言描述)、、、
C语言的问题 排序及查找
分别用3个函数完成: (1)输入10个职工的姓名和职工号 (2)按职工号从小到大排序,职工号也随之调整 (3)根据职工号,用折半查找的方法查找该职工的姓名 主函数调用这3个函数,并在主函数中输入(3)中的职工号,输出查询结果
c数字的排序、插入、查找
查找:rn*************************************************rn#include rnvoid main()rnrn int i,a[5],number;rn printf("请输入要查找的数字:");rn scanf("%d",&number);rn printf("请输入5个数字:");rn for(i=0;i<5;i++)rn rn scanf("%d",&a[i]);rn rn for(i=0;i<5;i++)rn rn if(a[i]==number)rn break;rn rn if(i<5)rn printf("在数组中的第%d个位置中找到了数字%d!\n",i+1,number);rn elsern printf("数组中没有找到%d!\n",number);rnrn***************************************************************rn排序:rn#include rnvoid main()rnrn int i,j,k,a[5];rn printf("请输入5个数:");rn for(i=0;i<5;i++)rn rn scanf("%d",&a[i]);rn rn for(i=0;i<4;i++)rn for(j=0;j<5-i-1;j++)rn rn if(a[j]>a[j+1])rn rn k=a[j];rn a[j]=a[j+1];rn a[j+1]=k;rn rn rn printf("输出排序为:");rn for(i=0;i<5;i++)rn printf("%d",a[i]);rn printf("\n");rn rnrn*************************************************rn插入:rn#include rn#define N 5rnvoid main()rnrn int i,j,a[N+1],x;rn printf("请从小到大输入5个整数:");rn for(i=0;ix)rn break;rn rn for(j=N;j>i;j--)rn a[j]=a[j-1];rn a[i]=x;rn printf("\n 插入后的数组元素:\n");rn for(i=0;i
数据结构查找和排序C代码实现
用C语言实现的代码,简单的查找和排序算法代码,自己写的,可能有点小错误,希望大家见谅
linux C 常用的排序,查找,算法的C语言实现 动态库
动态共享库中函数名: void Bubble_Sort(int a[],int len);/*冒泡排序*/ void Select_Sort(int a[], int len);/*选择排序*/ void Insertion_Sort(int a[], int len);/*插入排序*/ int Binary_Search(int a[], int start,int end, int key);/*折半查找*/ 用gcc与main函数 一起链接,即可调用库中函数!
用c语言实现无向图的最短路径的查找
用c语言实现无向图的所有点的最短路径的查找,对图进行广度和深度搜索,能写出所以的代码吗?在线等,急死我了,做不出来
查找排序的几种算法的实现
这是一个数据结构的课程设计主要是实现查找排序的几种算法用的语言是VC++.....................
简单的排序-查找实现----JAVA
JAVA----〉实现简单的排序-查找
二叉排序(查找)树的实现
二叉树排序树又称二叉查找数。它或者是一棵空数,或者是具有下列性质的二叉树: ①如果左子树不为空,那么左子树上所有节点的值均小于它的根节点的值; ②如果右子树不为空,那么右子树上所有节点的值均大于其根节点的值; ③左右子树也分别为二叉排序树 实现方法: package com.tongtong.tree; import java.util.LinkedList; import java...
js实现常用排序(查找)
二分查找 今天去携程面试,出了个二分查找的算法题,算是压死我的最后一根稻草吧,哎,要认认真真地研究基础知识了。 //二分查找 function binarySearch(arr,num, lowIndex, highIndex) { var len = arr.length; var lowIndex = lowIndex || 0; var highIndex = hig...
C语言:用单链表实现输入排序
纯当练习 链表头结点存储的信息是链表长度 平台VS2015 #include<stdio.h> #include<stdlib.h> #include<time.h> struct ListNode { int val; struct ListNode *next; }; void createList(struct ListNode* list, int listsSi
用C语言实现多级排序
根据输入的指令,从输入文件读取,按优先级,升序和降序的多级排序,并实现错误判断,再写入另一文件中
用c语言实现的字符串升序排序
#include&amp;lt;stdio.h&amp;gt; #include&amp;lt;string.h&amp;gt; int main() { int n; scanf(&quot;%d&quot;, &amp;amp;n); getchar(); char str[100][100]; for(int i = 0; i &amp;lt; n; i++) gets(str[i]); c...
怎么用LOCATE实现持续的查找?
谢谢
用SourceInsight怎么查找一个函数的实现?
我用Jump To Definition总是跳到函数的声明处,怎么能够直接跳到函数的实现?
用C语言实现3个数的排序
test.c#include &amp;lt;stdio.h&amp;gt; int main() { int a = 1; int b = 2; int c = 2; if ((a &amp;gt; b) &amp;amp;&amp;amp; (a &amp;gt; c)) { printf(&quot;%d\n&quot;, a); } else if (b &amp;gt; c) { printf(&quot;%d\n&quot;, b); } else ...
选择法排序,用C语言实现
//折半查找 #include&amp;lt;stdio.h&amp;gt; #define N 5 void main(){ int max,min,n,a[N],i = 0,in,w,flag = 1; scanf(&quot;%d&quot;,&amp;amp;a[i++]); //按照从小到大的顺序从键盘输入数据 while(i &amp;lt; N){ scanf(&quot;%d&quot;,&amp;amp;w); if(w &amp;gt; a[...
用冒泡法实现C的排序问题
题目:将一组数字按从大到小的顺序排序分析:要想对一串数字进行排序,就先要为它们创建一个空间来存放它们,我们可以创建一个数组来实现,如数组a[5]中存放了5个数字:38 57 20 89 18 它们在数组中的存储如图所示:用冒泡法来解决的思想是:先用a[0]和a[1]比较,如果a[1]比a[0]大, 就将a[0]和a[1]中的值交换,再用a[0]和a[2]、a[3]、a[4]依次比较,用同样的方法找...
数据结构——排序与查找(1)——排序与查找简介
为什么要进行排序?
ado的查找怎么用?
用ADO建立好连接后,recordset的查找命令怎么用?以及返回结果.
查找与排序
数据结构 查找 实验报告 掌握运用数据结构两种基本运算查找和排序,并能通过其能解决应用问题
查找和排序
掌握二分查找、归并排序和快速排序。能随时正确完整的写出它的代码。查找:顺序查找、二分查找、哈希表查找和二叉排序树查找。如果面试题是要求在排序的数组中查找一个数字或者统计某个数字出现的次数,我们都可以尝试用二分查找算法。快速排序的程序如下:int Parition(int data[],int length,int start,int end){ if (data==NULL||length&amp;lt;...
排序与查找
查找分为:1、静态表查找   2、 动态表的查找 静态表的查找有 1) 顺序表的查找  2)有序表的查找  3)索引表的查找 顺序表的查找就是  按照顺序一个一个的与关键字进行比较 平均查找长度 1+2+3+......n 有序表的查找:二分查找  平均查找长度的计算 利用二叉判定树 索引表的查找:表分成b块,每块s个元素  提取每块最大的元素建立索引  索引是有序的 标明最大元素在表中的
相关热词 c# 标准差 计算 c#siki第五季 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池