最后這句代碼費(fèi)了我點(diǎn)時(shí)間想。說一下,權(quán)當(dāng)給自己聽,for循環(huán)的else條件就是從第六個(gè)往后,每次循環(huán)都驗(yàn)證下數(shù)組里最小值,并寫了一個(gè)函數(shù),來取得最小值的下標(biāo)。循環(huán)完第一列,也就是box下標(biāo)為6的循環(huán),取得了最小值的下標(biāo)為3,然后把top設(shè)為3的高度(放在下標(biāo)3 的下面),left設(shè)為3*width,最重要的是把這個(gè)最小值變成兩個(gè)Box的高度和!所以下次循環(huán)再取最小值的下標(biāo)時(shí)候就不是3 了!而是重新計(jì)算數(shù)組中的最小值 那肯定就是其余中的一個(gè)了!那就獲得那個(gè)值的下標(biāo) 由此一整行都可以完成從下面接上Box 然后這行每個(gè)都加了Box的高度后,再計(jì)算又是開始時(shí)的最小值了!所以完成了每列每行的放置!