蓝桥杯2015培训(5)

来源:互联网 发布:马刺常青 知乎 编辑:程序博客网 时间:2024/04/30 15:14

数组的使用

数组类型是引用类型

数组的使用

使用数组的步骤:(下面所叙述的数组类型为同一种数据类型)

声明数组

A. 数据类型 [] 数组名;

B. 数据类型 数组名 [];

分配空间

数组名 = new 数据类型 [数组长度];

元素赋值

数组名[元素存储位置] = 元素的值;

取值,数据处理

数据类型标识符 =数组名[元素存储位置];

数组的定义:

数组是相同类型的大量数据的集合

数组的注意要点:

数组的元素存储位置必须0开始

 

冒泡排序

冒泡排序的精髓[J1] 

1.      冒泡排序需要双层循环,一个控制比较次数,一个遍历数组依次比较

2.      第二层循环是为了让当前数组(array.length-i)中有一个数变成有序的数列(比较,逆序交换)因为比较的是二层的相邻数

例如j 和j+1,为了防止越界,条件终止变成j<array.length-i-1;

3.      第一层循环是控制的至多要进行当前数组最少需要比较的次数

虽然每次都只能使得一个数变成有序的,那么就有人会问终止条件应该是i<array.length

为什么是i<array.length-1?

这个原因也比较简单,在最后,当只有两个数时,你使得一个数变成有序,那么就会使得这两个数都是有序的,所有这里需要i<array.length;

4.      冒泡排序是没有优化是最烂的排序方法,如果当前数组是有序的,那么也

通过上方解释进行编程        

public static void bubbleSort(int[] array)

   {

     int temp = 0;

     for(int i = 0;i<array.length-i;i++)

     {

            for(int j = 0;j<array.length-i-1;j++)

            {

            if(array[j]<array[j+1])

            {

               temp = array[j];

               array[j] = array[j+1];

               array[j+1] = temp;

             }

            }

     }

   }

直接插入排序

1.

作业

1.      递归求阶乘

2.      求数组最大值

3.      冒泡排序

4.      打印杨辉三角

5.      预习String


 [J1]

1.  每次循环使得一个数变得有序

2.  由上可知,第一层循环的控制比较次数

0 0