C++对结构体按照某一项元素进行排序
来源:互联网 发布:java读取文件赋予数组 编辑:程序博客网 时间:2024/06/06 01:07
情景:有一个结构体指针存放若干同类结构体,现需要按照结构体中的某个元素进行排序~~~
Po下自己的测试代码:
#include <iostream>#include<algorithm>using namespace std;struct CoordinateDistance{double x;double distance;};void SortSmallToBig(CoordinateDistance* array, int size){//get each point's distance error,then sort them from small to bigfor (int i = 0; i < size; ++i){for (int j = i + 1; j < size; ++j){if ((array + i)->distance>(array + j)->distance){CoordinateDistance temp = *(array + i);*(array + i) = *(array + j);*(array + j) = temp;}}}}//from big to smallbool cmp1(const CoordinateDistance &a, const CoordinateDistance &b){return a.distance > b.distance;}//from small to bigbool cmp2(const CoordinateDistance &a, const CoordinateDistance &b){return a.distance < b.distance;}void main(){CoordinateDistance point[] = { { 1.0, 3.0 }, { 0.5, 4.0 }, {3.0,2.0}};int size_point = sizeof(point) / sizeof(CoordinateDistance);CoordinateDistance *p = point;sort(p, p + size_point, cmp1);//SortSmallToBig(p,size_point);cout << "size" << size_point << endl;}其中,SortSmallToBig是自己写的升序函数,代码中还是用了STL中的sort函数。
0 0
- C++对结构体按照某一项元素进行排序
- 对ArrayList中的元素按照某一列进行排序
- 对ArrayList中的元素按照某一列进行排序
- 对ArrayList中某一元素进行排序
- 按照ASCIIl码 对元素进行从小到大排序
- 对数组按照某一基准进行整理
- 按照对象的某一属性进行排序
- vector元素为自定义结构体类型时如何对容器元素进行排序?
- vector元素为自定义结构体类型时如何对容器元素进行排序?
- C语言-对一个结构体中的字段进行排序
- 输入整型数组和排序标识,对其元素按照升序或降序进行排序
- 输入整型数组和排序标识,对其元素按照升序或降序进行排序
- 输入整型数组和排序标识,对其元素按照升序或降序进行排序
- 输入整型数组和排序标识,对其元素按照升序或降序进行排序
- 输入整型数组和排序标识,对其元素按照升序或降序进行排序
- 输入整型数组和排序标识,对其元素按照升序或降序进行排序
- 输入整型数组和排序标识,对其元素按照升序或降序进行排序
- 输入整型数组和排序标识,对其元素按照升序或降序进行排序
- hibernate---mysql sqlQuery多表联查 相同字段问题
- java的set
- 立体匹配算法之线性扫描思想
- iOS 之类和对象的几个判断iskindOfClass.....
- 常见英语缩写术语
- C++对结构体按照某一项元素进行排序
- Leetcode第三题python
- Android基础:最易懂的Activity启动模式详解
- ThreadLocal详解
- [Leetcode] 149. Max Points on a Line 解题报告
- Dubbo注册中心启动配置
- 新路程------imx6的sd 和emmc部分(1)
- Spring Boot 常用应用属性配置列表
- 关于代码整洁的一些坑