竹内纱里奈和大战黑人_欧美成人黄色小视频_91福利影视_欧美在线观看视频网站_h色网站免费观看_97综合

極客小將

您現在的位置是:首頁 » scratch編程資訊

資訊內容

Scratch第十四講:鏈表的使用

極客小將2021-03-12-
鏈表大家編程的時候用的不多,所以也不太熟悉,今天CC哥著重講一下,看看小伙伴們是否能夠通過鏈表的使用能夠讓程序做得更有效率。 鏈表:在scratch里也翻譯成列表。也是變量的一種,但是是一組變量。相當于一個隊列。通常用在同一類的變量組。

鏈表大家編程的時候用的不多,所以也不太熟悉,今天CC哥著重講一下,看看小伙伴們是否能夠通過鏈表的使用能夠讓程序做得更有效率。

鏈表:在scratch里也翻譯成列表。也是變量的一種,但是是一組變量。相當于一個隊列。通常用在同一類的變量組。舉個例子吧,比如今天天氣如何?晴天?陰天?多云?雷陣雨?等等,這些就可以看成一組變量,因為都是描述天氣的。再比如今天是星期幾?周一到周日,7個變量,也可以看成有關周幾的一組變量。這樣的例子很多,比如都有哪幾門功課?公園里都有哪些花?家里有哪些家具?這些都可以看成一組組的變量。

這么一解釋,是不是小伙伴頓時豁然開朗,原來鏈表就是變量組呀,那用途是不是很廣泛呢?當然我們也可以把變量組中的一個個變量拿出來定義成單獨的變量,但是這樣你就會發現有大量的重復編程的內容。

我們今天用一個例子來講講變量的用法,首先我們先解釋一下鏈表的指令集。

upload/article/images/2021-03-12/d5ae3cd1e94f98fd8ddea42116f1f007.jpg

CC哥創建了一個比賽的列表。第一條指令就是在列表的后面增加一個新的變量。第二條指令就是刪除變量組的某一條變量。(選項里包含了末尾和全部的選項,也就是可以直接把整個列表鏈表清空)第三條指令是插入指令。就是在某一項前面插入一個變量(此處也有兩個選項,可以插在末尾,可以隨機插入某個位置)。第四條是替換掉某個變量,也就是先刪除再插入了。(選項里也包括了末尾和隨機兩個選項)

upload/article/images/2021-03-12/084794d2a2bc495d1a017c46756bc8b4.jpg

這三條指令相當于參數的指令了。第一個是直接返回了鏈表中的某一項,第二個反饋整個鏈表有多少項。第三個是判斷整個鏈表中是否包含某一項目。

整個看起來是不是很像最基本的數據庫列表呀。

我們通過個小游戲來簡單熟悉一下:我們在屏幕上畫出三個軌道,讓小貓們在這個三個跑道上隨機的跑。

https://cdn.china-scratch.com/timg/180915/230H92042-2.gif

這個簡單的小動畫可以用很多方法實現,我們今天試試鏈表怎么用:

我們首先在屏幕上畫三條賽道(就畫三根線吧),然后我們創建一個賽道的列表,用來表示三條賽道的Y坐標。

upload/article/images/2021-03-12/d3cf752a20418444435979142c3eef8e.jpg

如果變量內容簡單,可以直接在創建鏈表的時候,直接把變量初始內容填上。點賽道變量表的左下角的小+號就可以添加變量。

當然如果變量有規律的話,也可以通過在程序里初始化階段通過循環指令添加。這個大家可以自己研究。

程序分解:

1:不斷的克隆小貓。

2:把每個克隆小貓出現的位置放在隨機的賽道上。然后向右方跑。

第一部分的程序,很簡單。

upload/article/images/2021-03-12/1beac194843db6c86d818cbd66d77090.jpg

第二段程序:

upload/article/images/2021-03-12/39ed1cce2f925b48a236d610ce89e299.jpg

左邊的部分很簡單,關鍵是選擇賽道這條指令。這個是CC哥新建了個積木指令。指令里只有一條語句,就是設置Y坐標為賽道變量里面任意一項的值。(之所以采用新建一個選擇賽道這樣的指令是想大家養成一個好習慣,讓編程更具可讀性,和可管理性。習慣去把一組復雜的指令打包成一個指令,以后更加方便的編程和維護。

通過這個小例子,大家是不是對鏈表有些熟悉啦。

CC哥仔細在網上研究了一下關于鏈表的經典例子,其中有一個能非常好的學習鏈表的例子,就是如何取不重復的隨機數。比如在1到10中任意選取五個不重復的隨機數。

重復的隨機數大家都會選,一條指令就做到了,那不重復的隨機數呢?其實不重復的隨機數應用很多,比如排雷的小游戲,你就不能把兩顆雷放在同一位置,還有打比賽,隨機抽取比賽隊伍時,就不能一個隊伍選兩次。很多游戲里的隨機選取都是不能重復的。

當然隨機選取不重復的方法也有很多,比如把隨機選取出來的數字與已經選取出來的數字做一一比對,如果重復再重新選取。

如果用鏈表的方法,效率就比較高:

1:從鏈表中任意選取一項。

2:將該項從鏈表中刪除。

3:重復第一步。

是不是很簡單,這樣就不會有重復的選項了。這個小程序就留給小伙伴們自己去做了。

聲明:本文章由網友投稿作為教育分享用途,如有侵權原作者可通過郵件及時和我們聯系刪除

預約試聽課

已有385人預約都是免費的,你也試試吧...

主站蜘蛛池模板: 久久久国产一区二区三区 | 日韩精品网 | 一区二区在线电影 | 精品国产乱码久久久久久图片 | 玖玖玖精品 | 国产精品久久久久久亚洲调教 | 国产精品视频1区2区3区 | 在线国产福利 | 国产在线激情 | 九九九九精品九九九九 | 国产网站在线免费观看 | 不卡的av电影在线 | 成人区精品一区二区 | 欧美成人激情 | 欧美日韩激情一区 | 国产a毛片 | 久久国产精品视频免费看 | 国产综合久久久 | 亚洲麻豆 | 爱爱小视频日本 | 欧美一区二区三区在线观看视频 | 日韩av影片在线观看 | 在线亚洲电影 | 99热一区 | 中文字幕亚洲天堂 | 日韩一区二区三区免费视频 | 亚洲乱码国产乱码精品精 | 日本在线一区二区 | 99精品视频免费在线观看 | 久久99精品一区二区三区三区 | 成人午夜小视频 | 中文字幕国产日韩 | 国产精品黄视频 | 91人人视频在线观看 | 嫩草在线视频 | 日韩在线国产精品 | 国产区精品视频 | 日韩精品一区在线观看 | 91欧美一区二区三区综合在线 | 99久久99久久 | 久久精品视频网站 |