STL algorithmi算法s_sorted和is_sorted_until(28)
is_sort原型:
::is_sorted
default (1) |
|
---|---|
custom (2) |
|
该函数是測试范围内的元素是否已经有序!
使用operator<或者comp来进行比較。
假设范围内的元素个数少于两个,总是返回true.
其行为类似例如以下:
|
|
一个简单的測试样例:
- #include <iostream>
- #include <vector>
- #include <algorithm>
- using namespace std;
- int main(int argv,char **argc)
- {
- vector<int> v1{1,2,3,4};
- vector<double> v2{4.0,5.0,3.5,6.0};
- cout<<"v1=";
- for(int i:v1)
- cout<<i<<" ";
- cout<<endl;
- if(is_sorted(v1.begin(),v1.end()))
- cout<<"v1 is sorted!"<<endl;
- else
- cout<<"v1 is not sorted!"<<endl;
- cout<<"v2=";
- for(double i:v2)
- cout<<i<<" ";
- cout<<endl;
- if(is_sorted(v2.begin(),v2.end()))
- cout<<"v2 is sorted!"<<endl;
- else
- cout<<"v2 is not sorted!"<<endl;
- }
执行结果:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXE4NDQzNTIxNTU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
is_sorted_until原型:
std::is_sorted_until
default (1) |
|
---|---|
custom (2) |
|
该函数类似与is_heap和is_heap_until的关系。
返回第一个破坏序列有序的元素迭代器。
使用operator<或者comp来进行比較。
|
|
一个简单的样例:
- #include <iostream>
- #include <vector>
- #include <algorithm>
- using namespace std;
- int main(int argv,char **argc)
- {
- vector<int> v1{1,2,3,4,5};
- vector<double> v2{4.0,5.0,3.5,6.0,1.0};
- cout<<"v1=";
- for(int i:v1)
- cout<<i<<" ";
- cout<<endl;
- cout<<"v2=";
- for(double i:v2)
- cout<<i<<" ";
- cout<<endl;
- auto it=is_sorted_until(v1.begin(),v1.end());
- if(it==v1.end())
- cout<<"v1 is sorted!"<<endl;
- auto it2=is_sorted_until(v2.begin(),v2.end());
- cout<<"v2 the return is "<<*it2<<endl;
- }
执行截图:
通过对照源码能够知道,第一个返回的是v1.end(),第二个返回的则是3.5!
——————————————————————————————————————————————————————————————————
//写的错误或者不好的地方请多多指导,能够在以下留言或者点击左上方邮件地址给我发邮件,指出我的错误以及不足,以便我改动,更好的分享给大家,谢谢。
转载请注明出处:http://blog.csdn.net/qq844352155
author:天下无双
Email:coderguang@gmail.com
2014-9-17
于GDUT
——————————————————————————————————————————————————————————————————
版权声明:本文博客原创文章,博客,未经同意,不得转载。
STL algorithmi算法s_sorted和is_sorted_until(28)的更多相关文章
- 常用的STL查找算法
常用的STL查找算法 <effective STL>中有句忠告,尽量用算法替代手写循环:查找少不了循环遍历,在这里总结下常用的STL查找算法: 查找有三种,即点线面: 点就是查找目标为单个 ...
- 【STL】帮你复习STL泛型算法 一
STL泛型算法 #include <iostream> #include <vector> #include <algorithm> #include <it ...
- STL基础--算法(排序)
STL排序算法 排序算法要求随机访问迭代器 vector, deque, container array, native array 例子 vector<int> vec = {9,1,1 ...
- C++复习:STL之算法
算法 1算法基础 1.1算法概述 算法部分主要由头文件<algorithm>,<numeric>和<functional>组成. <algorithm> ...
- STL所有算法简介 (转) http://www.cnblogs.com/yuehui/archive/2012/06/19/2554300.html
STL所有算法简介 STL中的所有算法(70个) 参考自:http://www.cppblog.com/mzty/archive/2007/03/14/19819.htmlhttp://hi.baid ...
- 初探STL之算法
算法 STL算法部分主要由头文件<algorithm>,<numeric>,<functional>组成.要使用 STL中的算法函数必须包括头文件<algor ...
- [C++ STL] 常用算法总结
1 概述 STL算法部分主要由头文件<algorithm>,<numeric>,<functional>组成.要使用 STL中的算法函数必须包含头文件<alg ...
- stl变易算法(三)
本篇接着前面stl变易算法(一)和stl变易算法(二)继续讲述变易算法. 这里将介绍完余下的变易算法,主要有:填充fill.n次填充fill_n.随机生成元素generate.随机生成n个元素gene ...
- 28.STL常用算法
#include <algorithm> 算法 常用版本 描述 返回Type std::find() find(_InIt _Fisrt,_InIt _Last, _Ty& _Va ...
随机推荐
- ExtJs迄今datefield控制设置默认值
假设extjs4 datefield日期控件设置默认值.为当天的前一月,和后一月 Ext.Date.MONTH 月 Ext.Date.YEAR 年 Ext.Date.DAY ...
- GitLab版本管理(转)
GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目.它拥有与Github类似的功能,能够浏览源代码,管理 ...
- index_ss hint 使用的运行计划变化对照
index_ss hint 使用的运行计划变化对照 当中 buffer 代表:当前操作中发生的内存读次数,包括一致性读和当前读 尽管 emp 表记录数不多,可是buffer 读内存的次数区别还是有点 ...
- opengl微发展理解
1.什么是OpenGL? 一种程序,可以与界面和图形硬件交互作用.一个开放的标准 2.软件管道 请看上图 - Apllication层 表示你的程序(调用渲染命令.如opengl API) - ...
- 软体project(两)——软体project
每本书的第一章,都是在讲宏观的东西.软工也不例外.接下来.我们就要介绍软件project"是什么"的问题. 一.是什么? watermark/2/text/aHR0cDov ...
- [leetcode] Combination Sum and Combination SumII
Given a set of candidate numbers (C) and a target number (T), find all unique combinations in C wher ...
- UML部署图和图九组件图
前言 UML大部分描写叙述了逻辑和设计方面的信息.实现图用来描写叙述实现方面的信息.实现图包含部署图和构件图. 构件图 1. 概念 构件图从软件架构的角度来描写叙述一个系统的 ...
- 谈话节目APE系列:如何成为技术达人
作为一个程序猿,总有消退的前辈.或更年轻的同行.牛逼的人总是羡慕. 让我们搞自己痛苦的日子 BUG .头发很快结束了抓,人们扫两.修改一行代码.问题得以克服:例如,他们自己开发的十年,少付 10K , ...
- 第一章 工欲善其事 其利润—Android SDK工具(2)
1.2设备管理工具-调试桥(ADB) 1.2.1ADB简单介绍 ADB全称是Android Debug Bridge,是Android SDK里自带的一个工具,用这个工具能够直接操作管理Android ...
- Unity3d 导入图像尺寸失真解决方案
导入到unity3d内的图像被默认长宽变换为满足2^n关系. 例如以下图,我有张图片名称为984plus598表示我尺寸为984*598.拷贝到unity3d中后的大小为1024*512 方法一: 在 ...