首页 > 编程语言 > 详细

c++ 之排序

时间:2016-03-06 01:10:59      阅读:145      评论:0      收藏:0      [点我收藏+]
#include<iostream>
#include<algorithm>
#include<functional>
#include<iterator>

using namespace std;
void main()
{
    int a[] = { 5, 7, 3, 4, 6 };
    sort(a, a + 5);//升幂排序
    copy(a, a + 5, ostream_iterator<int>(cout, " "));
    cout << endl;
    //降幂排序
    sort(a, a + 5, greater<int>());
    copy(a, a + 5, ostream_iterator<int>(cout, " "));
    cout << endl;
    //查找
    int *x = find(a, a + 5, 6);
    cout << *x << endl;
    if (x == a + 1)//a+1代表的是数组的第2个元素,意思是,判断a数组的第2个元素是否是*x
        cout << "there is a value 6 in array !" << endl;
    else
        cout << "no value 6 in array !" << endl;

    x = find(a, a + 5, 3);
    cout << *x << endl;
    if (x == a + 4)//a+4代表的是数组的第5个元素,意思是,判断a数组的第5个元素是否是*x
        cout << "there is a value 3 in array !" << endl;
    else
        cout << "no value 3 in array !" << endl;
}


输出结果如下所示

技术分享

注意,sort 函数的参数第一a,指的是数组a,第二个指的是数组a+数组元素的个数,find函数的参数也是如此,但是if里面则不是,if里面指定的是你要查找的那个元素

是否在数组的某个位置并非指的是数组a+上数组元素的个数,我被教学视频给误导了,所以调试了半天才发现各个函数参数代表的意思!

 

end !

 

c++ 之排序

原文:http://www.cnblogs.com/changbo/p/5246404.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!