Raptor-初始化數組的四種方式

                                     初始化數組的四種方式

目錄

1. 問題描述

2. 四種方式

1) 順序賦值初始化

2) 循環輸入初始化

3) 循環隨機初始化

4) 以0初始化數組

3. 運行實例


1. 問題描述

在初學Raptor時,經常會遇到如下問題:對10個同學的成績進行排序、對一組數進行排序、斐波那契數列等等。這些涉及到一系列數據的問題往往可以利用數組來比較方便的解決。通過利用數組,緩解了定義多個變量的困擾,下面以一維數組爲例,簡要介紹數組初始化數據的四種方式,並簡要介紹其優缺點。

 

2. 四種方式

1) 順序賦值初始化

數組名爲a,其中有8個元素,分別是0-7,如下圖所示:

 

優點:

對於某些輸入不會變動的數據,可以這樣輸入,比如如果數組a代表的是八進制的8個基數,那麼就是永遠不會變動的,所以可以這樣定義。上面的例子不是很好,如果是16進制可能會更有說服力,因爲16進制的基數不光有數組,還有字母。

缺點:

喪失了數組的優勢,一次賦值後,後面如果想要使用就要重新賦值,及其不方便,所以這個方法如果沒有必要使用就不要使用。

 

2) 循環輸入初始化

數組名爲b,通過輸入數組的長度變量n,再通過循環輸入創建數組,如下圖所示:

優點:

充分利用了數組能組織數據的這一特點,對於數組長度和輸入數據都不確定的問題,這個方法非常有用。

缺點: 

① 某些問題對於輸入數據沒什麼要求的情形,還要自動手動輸入,有些不太方便;

② 如果讓初始化的數組結果爲全部爲0,通過更改輸入框爲賦值框可以實現,但是不是最簡單的方法,最簡單的方法見方式4。

 

3) 循環隨機初始化

 數組名爲c,數組長度n可以自己輸入,數組中的元素爲[0, 99]的隨機整數(關於生成任意範圍的隨機數,可以參考我之前的博客:Raptor中生成任意範圍的隨機數),如下圖所示:

優點:

① 對於有些問題,題目要求數組中的元素爲一定範圍的隨機數,所以必須用這種方式;

② 對於輸入沒什麼要求的問題,可以用隨機初始化的方法,比如金塊問題、數據排序問題;

③ 節省了手工輸入數據的時間,對於驗證某些算法的可行性時,經常採用隨機初始化數組的方式,比如排序算法。

缺點: 

 基本上沒什麼缺點,這種方式可應對一大類對數組數據沒有要求的問題

4) 以0初始化數組

數組名爲d,數組長度n通過輸入指定,數組初始值全部爲0,如下圖所示:

優點:

當數組初始值要求全部爲0時,此方法非常便捷!

缺點: 

不能拓展到數組初始值全部爲非0值的情形。

 

3. 運行實例

下面是主圖和用於展示數據的子程序:

 

結果:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章