赞
踩
首先关于list容器做个简要介绍:
list容器中的数据是链式存储,动态分配存储,不会造成内存浪费和溢出
可对任意位置进行快速插入和删除
不支持随机访问迭代器
因为对所有不支持随机访问迭代器的容器,不可以用标准算法,但list内部提供对应一些算法,比如排序算法
L.sort()//排序函数--默认升序,若想让其实现降序该怎么办?
则需要自定义排序规则函数作为参数传入sort
L1.sort(mySort);
实现数据降序排列的代码:
L1.sort(mySort);
bool mySort(int v1,int v2)
{
//降序,就让第一个数大于第二个数
return v1 > v2;
}
下面利用list容器实现自定义类型数据的排序,将自定义Person类数据按年龄升序,若年龄相同则按身高降序排列:
#include<iostream>
using namespace std;
#include<string>
#include<list>
class Person//定义一个Person类
{
public:
Person(string name,int age,int height)
{
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。