Raptor-初始化数组的四种方式

  • Post author:
  • Post category:其他


初始化数组的四种方式


目录


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. 运行实例

下面是主图和用于展示数据的子程序:

结果:



版权声明:本文为qq_30252385原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。