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的更多相关文章

  1. STL_算法_对全部元素排序(sort、stable_sort)

    C++ Primer 学习中. . .   简单记录下我的学习过程 (代码为主) //大部分容器适用.不适用于list容器 sort(b,e) sort(b,e,p) stable_sort(b,e) ...

  2. cb51a_c++_STL_算法_根据第n个元素排序nth_element

    cb51a_c++_STL_算法_根据第n个元素排序nth_elementnth_element(b,n,e),比如最大的5个数排序,或者最小的几个数nth_element(b,n,e,p)对比:pa ...

  3. cb50a_c++_STL_算法_局部排序partial_sort

    cb50a_c++_STL_算法_局部排序partial_sort partial_sort(b,se,e)排序一部分,begin,source end,endcout << " ...

  4. cb26a_c++_STL_算法_元素计数

    cb26a_c++_STL_算法_元素计数所有容器都可以使用countcount_if关联容器的等效成员函数,容器自己的成员函数速度较快1.set.count2.multiset.count3.map ...

  5. cb37a-_c++_STL_算法_复制元素copy_copy_backward

    cb37a-_c++_STL_算法_复制元素copy_copy_backward copy(),同一个容器内部区间的拷贝,或者容器与容器之间的拷贝copy_backward()//向后copy 注意: ...

  6. cb36a_c++_STL_算法_区间的比较equal_mismatch_lexicographical_compare

    *cb36a_c++_STL_算法_区间的比较equal_mismatch_lexicographical_compare 区间:容器中的全部数据或者部分数据,都叫做区间 equal(b,e,b2), ...

  7. 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 ...

  8. cb47a_c++_STL_算法_排列组合next_prev_permutation

    cb47a_c++_STL_算法_排列组合next_prev_permutation 使用前必须先排序.必须是 1,2,3或者3,2,1.否者结果不准确.如果, 1,2,4,6.这样数据不会准确nex ...

  9. cb43a_c++_STL_算法_删除_(1)remove_remove_if

    cb43a_c++_STL_算法_删除_(1)remove_remove_ifremove()remove_if() 注意:1.并不是真正的删除,而是把后面的元素向前移动,覆盖被删除元素,元素个数并没 ...

随机推荐

  1. Redis数据迁移同步工具(redis-shake)

    前言 最近线上一台自建redis服务的服务器频繁报警,内存使用率有点高,这是一台配置比较简陋(2C8G)的机子了,近期也打算准备抛弃它了.抛弃之前需对原先的数据进行迁移,全量数据,增量数据都需要考虑, ...

  2. Redis学习笔记(1)

    一.NoSQL基础知识 1. NoSQL概念 NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,泛指非关系型的数据库.随着互联网web2.0网站的兴起,传统的关系数据库 ...

  3. 自定义cursor鼠标 图片

    1.CSS3自定义鼠标样式 最近想要使用自定义鼠标样式,看了cursor的样式不好看,就想到cursor属性能不能自定义图片,翻看了下CSS3文档,发现是可以的 格式为:cursor:url('图片u ...

  4. [JavaWeb基础] 023.线程安全(二)

    上一篇我们讲解了线程安全的问题,那么要解决线程安全的问题,我们就必须用到线程同步,保证线程之间不互相影响而产生脏数据,下面我们来讲讲具体的实现吧. 首先我们看下例子,我们有个Outputter类,用于 ...

  5. WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping 异常详细信息: System.InvalidOperationException: WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping。请添加一个名为 jquery (区分大小写)的

    WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping.请添加一个名为 jquery (区分大小写)的 ScriptRes ...

  6. Linux 比较常用的命令

    #磁盘空间 df -h 显示已经挂载的分区列表 du -sh [file] 估算当前使用磁盘空间 du -sk * | sort -rn 以容量大小递减排序 文件搜索 find find [file_ ...

  7. 【Storm】核心组件nimbus、supervisor、worker、executor、task

    nimbus 是整个集群的控管核心,负责topology的提交.运行状态监控.任务重新分配等工作. zk就是一个管理者,监控者. 总体描述:nimbus下命令(分配任务),zk监督执行(心跳监控wor ...

  8. 【HIVE】数据分析HQL的编写方法/思路

    SQL编写一般思路: 1)复杂的查询,先划分为小任务,以降低难度.分别实现各个小任务后,再进行汇总: 2)涉及多表时,先进行联表查询: 3)简单分组,一般只需要group by即可: 4)组内TopN ...

  9. Java实现 蓝桥杯 算法训练 Number Challenge(暴力)

    试题 算法训练 Number Challenge 资源限制 时间限制:3.0s 内存限制:512.0MB 问题描述 定义d(n)为n的约数个数.现在,你有三个数a,b,c.你的任务是计算下面式子mod ...

  10. Java实现 LeetCode 698 划分为k个相等的子集(递归)

    698. 划分为k个相等的子集 给定一个整数数组 nums 和一个正整数 k,找出是否有可能把这个数组分成 k 个非空子集,其总和都相等. 示例 1: 输入: nums = [4, 3, 2, 3, ...