当前位置:   article > 正文

C++容器&排序_c++ 容器排序

c++ 容器排序

首先关于list容器做个简要介绍:

list容器中的数据是链式存储,动态分配存储,不会造成内存浪费和溢出
可对任意位置进行快速插入和删除
不支持随机访问迭代器
  • 1
  • 2
  • 3

因为对所有不支持随机访问迭代器的容器,不可以用标准算法,但list内部提供对应一些算法,比如排序算法

L.sort()//排序函数--默认升序,若想让其实现降序该怎么办?
则需要自定义排序规则函数作为参数传入sort
L1.sort(mySort);
  • 1
  • 2
  • 3

实现数据降序排列的代码:

L1.sort(mySort);
bool mySort(int v1,int v2)
{
   
    //降序,就让第一个数大于第二个数
	return v1 > v2;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

下面利用list容器实现自定义类型数据的排序,将自定义Person类数据按年龄升序,若年龄相同则按身高降序排列:

#include<iostream>
using namespace std;
#include<string>
#include<list>
class Person//定义一个Person类
{
   
public:
	Person(string name,int age,int height)
	{
   
		
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/528936
推荐阅读
相关标签
  

闽ICP备14008679号