简单的数组排序函数return(a-b)

来源:互联网 发布:matlab如何分析数据 编辑:程序博客网 时间:2024/05/23 13:23

关于return a-b 的理解


如果a-b>0(即正数)就把a和b的位置交换,也就是较小的一个数会排到前面;

如果b-a>0就把a和b的位置交换,也就是较大的一个数会排到前面。



这是比较函数 return a和b的关系 用于真正的排序函数来排序

return a-b 和 return b-a 所排序的方式不同 从小到大 或从大到小


这个时候再通过sort排序的时候,每次都要计算一次正负值后对两个数排序,这样负数肯定在前,正数在后……

这样,小的在前,大的在后,就是升序排列。

反过来,b-a的话,如果a>b,返回的是负数,这样b就在前面……最后结果就是降序排列


因为sort()函数使用的是冒泡排序,冒泡排序会重复地走访要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来,一直重复地进行直到说该数列已经排序完成。


0 0
原创粉丝点击