4 回答

TA貢獻(xiàn)1條經(jīng)驗(yàn) 獲得超0個(gè)贊
如果沒看錯(cuò)這應(yīng)該是冒泡排序,因?yàn)橛?jì)算機(jī)是順序執(zhí)行的,所以我們可以分解來看,只看 i = 0 的時(shí)候
i = 0, j 的循環(huán)是 ?0 到 length - 1 - 0 ? ? ?
也就是說在這次循環(huán)中要做一下判斷 a[0] > a[1] ?那么交換 ?a[1] > a[2] 那么交換 ........ a[length - 1] > a[length] 那么交換
到此,可以保證一點(diǎn):a[length] 一定是該數(shù)組中的最大值
第二步 i = 1, j 的循環(huán)是 0 到 length - 1 - 1
也就是判斷 a[0] > a[1] 交換 ?a[1] > a[2] 交換 ...... a[length - 2] > a[length -1] 交換 ?
到此,可以保證: a[length - 1] 一定是該數(shù)組中的最大值 (a[length]已經(jīng)被排除在外)
第三步 i = ...?
結(jié)束后的數(shù)組就是 從小到大順序排列了?
如果沒思路就動(dòng)手照著計(jì)算機(jī)的執(zhí)行順序?qū)懸粚?/p>

TA貢獻(xiàn)4條經(jīng)驗(yàn) 獲得超1個(gè)贊
打印一下數(shù)組的長度,數(shù)組長度是里面存放的數(shù)據(jù)的個(gè)數(shù)的,而里面數(shù)據(jù)的索引是從0開始的,索引到最后一個(gè)是數(shù)據(jù)的個(gè)數(shù)-1,你數(shù)數(shù)是從1開始數(shù)的嘛,然而索引從0開始的,所以要減一咯

TA貢獻(xiàn)3593條經(jīng)驗(yàn) 獲得超0個(gè)贊

TA貢獻(xiàn)2條經(jīng)驗(yàn) 獲得超0個(gè)贊

TA貢獻(xiàn)1017條經(jīng)驗(yàn) 獲得超1032個(gè)贊
添加回答
舉報(bào)