cb49a_c++_STL_算法_对所有元素排序_sort_stable_sort
cb49a_c++_STL_算法_对所有元素排序_sort_stable_sort
sort(b,e)
sort(b,e,p)
stable_sort(b,e)
stable_sort(b,e,p) 注意:
不适用于list容器,list有成员函数sort();
cb49a_c++_STL_算法_对所有元素排序_sort_stable_sort
sort(b,e)
sort(b,e,p)
stable_sort(b,e) //stirng,按字符个数排序.能够保证位置间前面一致。比如 22 33 55. 555, 如果按个数排序, 22能够保证一直在33前。
stable_sort(b,e,p)//
/*cb49a_c++_STL_算法_对所有元素排序_sort_stable_sort
sort(b,e)
sort(b,e,p)
stable_sort(b,e)
stable_sort(b,e,p) 注意:
不适用于list容器,list有成员函数sort();
*/ #include <iostream>
#include <algorithm>
#include <functional>
#include <vector>
#include <deque> using namespace std; template <typename TT9>
void print9(TT9 &ideq)
{
for (TT9::iterator iter = ideq.begin(); iter != ideq.end(); ++iter)
cout << *iter << ' ';
cout << endl;
} int main()
{
deque<int> ideq; for (int i = ; i <= ; ++i)
ideq.push_back(i);
for (int i = ; i <= ; ++i)
ideq.push_back(i);
print9(ideq); sort(ideq.begin(),ideq.end());
cout << "默认是less,从小到大排序后: " << endl;
print9(ideq); //sort(ideq.begin(), ideq.end(),less<int>());//默认是less,从小到大排列
sort(ideq.begin(), ideq.end(),greater<int>());//从大到小
cout << "从大到小排序后: " << endl;
print9(ideq); return ;
}
/*cb49a_c++_STL_算法_对所有元素排序_sort_stable_sort
sort(b,e)
sort(b,e,p)
stable_sort(b,e) //stirng,按字符个数排序.能够保证位置间前面一致。比如 22 33 55. 555, 如果按个数排序, 22能够保证一直在33前。
stable_sort(b,e,p)// 注意:
不适用于list容器,list有成员函数sort();
*/ #include <iostream>
#include <algorithm>
#include <functional>
#include <vector>
#include <string> using namespace std; template <typename TT9>
void print9(TT9 &ideq)
{
for (TT9::iterator iter = ideq.begin(); iter != ideq.end(); ++iter)
cout << *iter << ' ';
cout << endl;
}
bool lessLength(const string &s1, const string &s2)
{
return s1.length() < s2.length();
} int main()
{
vector<string> svec;
vector<string> svec2;
svec.push_back("1xxxx");
svec.push_back("2x");
svec.push_back("3x");
svec.push_back("4x");
svec.push_back("5xx");
svec.push_back("6xxxx");
svec.push_back("7xx");
svec.push_back("8xxx");
svec.push_back("9xx");
svec.push_back("10xxx");
svec.push_back("");
svec.push_back("");
svec.push_back("");
svec.push_back("");
svec.push_back("14xx");
svec.push_back("");
svec.push_back(""); svec2 = svec;
print9(svec); sort(svec.begin(), svec.end(), lessLength);
print9(svec); cout << "稳定的排序:" << endl;
//stable_sort(b, e, p)//
stable_sort(svec2.begin(), svec2.end(), lessLength);
print9(svec2); return ;
}
cb49a_c++_STL_算法_对所有元素排序_sort_stable_sort的更多相关文章
- STL_算法_对全部元素排序(sort、stable_sort)
C++ Primer 学习中. . . 简单记录下我的学习过程 (代码为主) //大部分容器适用.不适用于list容器 sort(b,e) sort(b,e,p) stable_sort(b,e) ...
- cb51a_c++_STL_算法_根据第n个元素排序nth_element
cb51a_c++_STL_算法_根据第n个元素排序nth_elementnth_element(b,n,e),比如最大的5个数排序,或者最小的几个数nth_element(b,n,e,p)对比:pa ...
- cb50a_c++_STL_算法_局部排序partial_sort
cb50a_c++_STL_算法_局部排序partial_sort partial_sort(b,se,e)排序一部分,begin,source end,endcout << " ...
- cb26a_c++_STL_算法_元素计数
cb26a_c++_STL_算法_元素计数所有容器都可以使用countcount_if关联容器的等效成员函数,容器自己的成员函数速度较快1.set.count2.multiset.count3.map ...
- cb37a-_c++_STL_算法_复制元素copy_copy_backward
cb37a-_c++_STL_算法_复制元素copy_copy_backward copy(),同一个容器内部区间的拷贝,或者容器与容器之间的拷贝copy_backward()//向后copy 注意: ...
- cb36a_c++_STL_算法_区间的比较equal_mismatch_lexicographical_compare
*cb36a_c++_STL_算法_区间的比较equal_mismatch_lexicographical_compare 区间:容器中的全部数据或者部分数据,都叫做区间 equal(b,e,b2), ...
- cb32a_c++_STL_算法_查找算法_(5)adjacent_find
cb32a_c++_STL_算法_查找算法_(5)adjacent_findadjacent_find(b,e),b,begin(),e,end()adjacent_find(b,e,p),p-par ...
- cb47a_c++_STL_算法_排列组合next_prev_permutation
cb47a_c++_STL_算法_排列组合next_prev_permutation 使用前必须先排序.必须是 1,2,3或者3,2,1.否者结果不准确.如果, 1,2,4,6.这样数据不会准确nex ...
- cb43a_c++_STL_算法_删除_(1)remove_remove_if
cb43a_c++_STL_算法_删除_(1)remove_remove_ifremove()remove_if() 注意:1.并不是真正的删除,而是把后面的元素向前移动,覆盖被删除元素,元素个数并没 ...
随机推荐
- 基于 abp vNext 和 .NET Core 开发博客项目 - 使用Redis缓存数据
上一篇文章(https://www.cnblogs.com/meowv/p/12943699.html)完成了项目的全局异常处理和日志记录. 在日志记录中使用的静态方法有人指出写法不是很优雅,遂优化一 ...
- 相邻元素margin的自动合并与float的坑
css中相邻元素的margin其实是会自动合并的,且取较大值. <!DOCTYPE html> <html lang="en"> <head> ...
- [Python3]踩坑实录-优化技巧1
选择合适的数据结构 考虑不同的应用场景,应选择不同的数据结构 比如在查找多于插入的场景中,考虑字典Dict是不是更适合; 因为在Python3中, 字典Dict 通过hash把key映射到hash t ...
- Chisel3 - model - Hardware Model
https://mp.weixin.qq.com/s/x6j7LZg7i7i_KcNEA8YCQw Chisel作为领域专用语言(DSL),用于构建硬件模型.待硬件模型建立后,再基于模型进行仿真. ...
- Chisel3 - 参考资料汇总
https://mp.weixin.qq.com/s/mIexKCFA1MQNOl4M_iVkjg 1. 官方网站 https://chisel.eecs.berkeley.edu/ ...
- 【Checkpoint】HA模式下结合zookeeper说一下checkpoint流程
checkpoint过程 配置了HA的HDFS中,有active和standby namenode两个namenode节点.他们的内存中保存了一样的集群元数据信息,这个后续我会详细用一篇文章介绍HA, ...
- Java实现 LeetCode 609 在系统中查找重复文件(阅读理解+暴力大法)
609. 在系统中查找重复文件 给定一个目录信息列表,包括目录路径,以及该目录中的所有包含内容的文件,您需要找到文件系统中的所有重复文件组的路径.一组重复的文件至少包括二个具有完全相同内容的文件. 输 ...
- Java实现 LeetCode 52 N皇后 II
52. N皇后 II n 皇后问题研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击. 上图为 8 皇后问题的一种解法. 给定一个整数 n,返回 n 皇后不同的解决方案 ...
- Java实现斐波那契数列的多种方法
小编综合了很多算法相关的书籍以及其他,总结了几种求斐波那契数列的方法 PS:其中的第83行的递归法是求斐波那契数列的经典方法 public class 斐波那契数列 { //迭代法 public st ...
- 第六届蓝桥杯JavaA组国(决)赛真题
解题代码部分来自网友,如果有不对的地方,欢迎各位大佬评论 题目1.胡同门牌号 小明家住在一条胡同里.胡同里的门牌号都是连续的正整数,由于历史原因,最小的号码并不是从1开始排的. 有一天小明突然发现了有 ...