C语言qsort函数对二维数组排序的不同情况
内置排序函数——qsort函数
函数说明:
下面博主讲的很清楚,不多介绍。
C语言:qsort()解析
对二维数组:
上文博主提到了对二维数组排序时compare函数的写法,但在具体实践中,我们会发现qsort失灵的情况,这就是因为针对不同的二维数组,compare函数中的常变量要用不同的形式来写,如下:
- 针对直接开辟数组空间而非malloc二级指针得来的二维数组:
int comp(const void*a, const void*b) return((int*)a)[0]-((int*)b)[0];//这里[]下标换成你自己的排序依据
- 而针对malloc得来的二维数组:
int comp(const void *a, const void *b)
{if ((*(int**)a)[0] == (*(int**)b)[0])return (*(int**)a)[1] - (*(int**)b)[1];//此处则表示先按第一项排序,第一项相同的情况下按第二项return (*(int**)a)[0] - (*(int**)b)[0];
}
(PS.上面两种都是从小到大排序)
愿因:
请参见二级指针和二维数组的区别。
二维数组与二级指针
C语言qsort函数对二维数组排序的不同情况相关推荐
- php 二维数组排序函数,php自定义函数实现二维数组排序功能
本文实例讲述了php自定义函数实现二维数组排序功能.分享给大家供大家参考,具体如下: /**作用: 二维数组排序函数,支持多键名排序 * 返回: 排序好的数组 * 使用: array_msort(数组 ...
- c语言sort函数排序二维数组,js 二维数组排序sort()函数
一.按数值排序 var arr = [[1, 2, 3], [7, 2, 3], [3, 2, 3]]; arr.sort(function(x, y){ return x[0] – y[0]; }) ...
- c语言sort函数排序二维数组,关于C++ 的 sort 对二维数组排序。该如何解决
关于C++ 的 sort 对二维数组排序. 有一个二维数组.假设是 N * N: 需要对某个位置的X(横向排序).或者某个位置的Y(纵向排序). 例如: 4 6 5 1 3 2 8 7 9 对 2 行 ...
- php 二维排序函数,PHP二维数组排序函数
PHP一维数组的排序可以用sort(),asort(),arsort()等函数,但是PHP二维数组的排序需要自定义. 以下函数是对一个给定的二维数组按照指定的键值进行排序,先看函数定义: functi ...
- C语言子函数返回二维数组讨论
C语言中,在子函数中将一个二维数组返回 都知道,在子函数中,一定不能返回一个局部变量的指针,局部变量在子函数中进行创建,子函数调用结束后,该指针将被释放掉. 如果被指针所指向的该内存空间被别的程序占用 ...
- C语言给函数传二维数组
害,菜鸡真的是走一步一个坑,有时间一定得系统学习一下c了. 言归正传,给函数传递二位数组,我目前可以掌握的有三种方法: 1.将二维数组压缩成一维数组,然后就可以正常用指针了,用的时候注意一下二维与一维 ...
- c语言sort函数排序二维数组,c++ - 如何使用stl sort函数根据第二列对二维数组进行排序? - 堆栈内存溢出...
stl排序要求迭代器的rvalue作为参数传递. 如果你想使用sort函数,你必须在c ++ 11中编译并使用数组stl来存储数组. 代码如下 #include "bits/stdc++.h ...
- C++中的sort函数对二维数组排序是按照什么准则?
遇到的一个疑惑,现记录如下: int main() {vector<vector<int>> envelopes = { {5, 8},{6, 7},{6, 4},{2, 3} ...
- c++排序函数对二维数组排序_JS骚操作之数组快速排序
如果你想要对数组排序,可能会去百度去搜,于是有很多人教你用冒泡,什么二分插入排序.堆排序,如果不太懂其中的代码意思,很难看明白.来,今天我来教大家一个骚操作. 我利用的就是JS数组的索引来排序的,大家 ...
最新文章
- Vue $createElement
- go 方法接受者 是指针类型和非指针类型的 区别
- FPGA之道(36)Verilog中的编译指令
- python画图哆啦a梦-Python小白绘图 哆唻A梦 turtle真的很强大!
- 排序算法--快速排序
- 【鲲鹏来了】手把手教你在鲲鹏上使用编程语言——Java、Python
- spring_boot 与MyBatis 整合
- Activiti 手工任务(manualTask)
- python学习之dict的items(),values(),keys()
- latex 数学公式_推荐一款编写数学公式的国产神器:AxMath,可与LATEX双向转换
- 金蝶K3案例教程目录
- 情缘难舍 愿为一叶扁舟
- 永久免费!吴恩达刚公布的深度学习课程上线网易云课堂
- 获取网易云音乐封面图片
- 中关村科技企业融资缺口700亿 商业银行垂涎
- 程序员 神经衰弱 植物神经紊乱 神经官能症 惊恐障碍 惊恐发作 焦虑症
- ginapi服务器性能,基于gin web框架搭建RESTful API服务
- 推荐9个软件神器,26个网站,让你PPT更加风骚
- 【数据库系统原理作业】八、集合查询、派生词查询、数据更新、空值的处理、视图
- Python Pdb源码解析