竹内纱里奈和大战黑人_欧美成人黄色小视频_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人預約都是免費的,你也試試吧...

主站蜘蛛池模板: 国产视频一区二区三区四区 | 黄色片网站免费观看 | 黄色一级免费 | 久久看看 | 亚洲视频免费观看 | 国产日韩精品在线 | 91精品福利 | 欧美日韩高清在线观看 | 精品在线免费观看 | 国产黄a三级三级三级老师 国产麻豆精品一区二区 | 国产麻豆精品 | 国产精品美女久久久久久久网站 | 99re在线视频 | 国产视频亚洲精品 | 精品久久久网站 | 激情免费视频 | 欧美日韩aaa | 欧洲成人av | 国内久久 | 亚洲乱码一区二区三区在线观看 | 日本三级全黄少妇三2023 | 国产精品片在线观看 | 成人手机视频在线 | 成人免费视频观看 | 久久国产精品免费 | 久热99| 日韩欧美自拍 | 国产精品久久久久av | 精品一区中文字幕 | 国产在线成人 | 激情欧美一区 | 99在线观看视频 | 久久国产精品免费 | 成人免费观看黄a大片夜月 日韩亚洲欧美一区 | 一线毛片| 欧美不卡一区二区三区 | 午夜黄色av | 亚洲综合在线一区二区 | 亚洲国产午夜 | 99久久99热这里只有精品 | 在线免费观看黄色片 |