第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

有點不明白

balls[cnt++] =balls[j];

舉個例子,每秒循環(huán)20次,當?shù)?5次的時候開始有不符合條件的小球出現(xiàn),此時數(shù)組的情況是:

那balls[cnt]儲存的部分是后面深藍的嗎?

cnt計數(shù)應該是從0開始的,可是后面深藍的部分是從21開始的啊

push()和pop()都是對最后面的處理,這個不是去除不掉前面淺藍的部分嗎?

正在回答

1 回答

根據(jù)你的示意圖,第一次運行balls[cnt++] =balls[j]的時候,就是:

balls[0] = balls[20],之后cnt++,cnt為1;

第二次的時候為 balls[1] = balls[21],,之后cnt++,cnt為2;

第三次的時候為 balls[2] = balls[22],,之后cnt++,cnt為3;

...

以此類推,

最后一次運行的時候,是:balls[179] = balls[199],,之后cnt++,cnt為180;


之后j=200 循環(huán)結(jié)束。此時,balls[0]-balls[179]為180個在屏幕內(nèi)的小球。balls[180]-balls[199]的數(shù)據(jù)沒有用了。


這樣的算法,在結(jié)果不規(guī)整的時候極為有用,比如 balls[3]-balls[21];balls[25]-balls[77];balls[80]-balls[128];balls[156]-balls[177]都顯示在屏內(nèi)時,你可以試著想想這個算法的操作結(jié)果。


最后的處理就是把尾巴部分balls[180]以后的小球給刪除掉了。


對于這個算法,確實配一個動畫現(xiàn)實更直觀。謝謝你的提問,


2 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號