關于return a-b 的理解這樣是否正確??
我們可以這么理解 return a-b ?
如果a>b的話 返回的不管是幾,肯定是正數、?
a<b的話肯定是負數。(這里不考慮等于的情況,沒意義,排序誰前誰后有區別嗎?)?
這個時候再通過sort排序的時候,每次都要計算一次正負值后對兩個數排序,這樣負數肯定在前,正數在后……
這樣,小的在前,大的在后,就是升序排列。
反過來,b-a的話,如果a>b,返回的是負數,這樣b就在前面……最后結果就是降序排列
不知道這樣理解對不對?
我們可以這么理解 return a-b ?
如果a>b的話 返回的不管是幾,肯定是正數、?
a<b的話肯定是負數。(這里不考慮等于的情況,沒意義,排序誰前誰后有區別嗎?)?
這個時候再通過sort排序的時候,每次都要計算一次正負值后對兩個數排序,這樣負數肯定在前,正數在后……
這樣,小的在前,大的在后,就是升序排列。
反過來,b-a的話,如果a>b,返回的是負數,這樣b就在前面……最后結果就是降序排列
不知道這樣理解對不對?
2014-11-30
舉報
2014-12-10
因為sort()函數使用的是冒泡排序,冒泡排序會重復地走訪要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來,一直重復地進行直到說該數列已經排序完成。
如果a-b>0(即正數)就把a和b的位置交換,也就是較小的一個數會排到前面;
如果b-a>0就把a和b的位置交換,也就是較大的一個數會排到前面。
2016-08-19
2014-12-04
但是為什么不是對a-b的值進行大小排序呢?我在這卡著了,求解
2014-12-01
可以這么理解