赞
踩
一、二维数组的定义和使用
1、定义
首先讲一讲二维数组的理解,其实二维数组就是一些一维数组的嵌套,可以把二维数组的每一行看作一个内层的一维数组。
2、二维数组的内存结构图
3、、初始化形式
二维数组与一维数组一样,同样是有两重初始化形式,一种是动态初始化,一种是静态初始化。
形式1、动态初始化。
格式:数据类型 数组名 [ ][ ] = new 数据类型[m][n];
数据类型 [ ][ ] 数组名 = new 数据类型[m][n];
数据类型 [ ] 数组名 [ ] = new 数据类型[m][n];
m,n是变量,比如:int arr [ ] [ ] = new int [3][4];也可以理解为三行四列。
形式2、静态初始化。
格式:数据类型 [ ][ ] 数组名 = {{元素1,元素2....},{元素1,元素2....},{元素1,元素2....}.....};
元素一、元素二......指的是一些常量
如:{1,1,1,1} , {2, 2, 2, 2}等等;
4、代码演示
例:定义一个4行4列的二维数组,将对角线的值赋为1,其他为0
public class text2 { public static void main(String[] args) { //静态初始化赋值 int [][] arr = {{1,0,0,1} ,{0,1,1,0}, {0,1,1,0}, {1,0,0,1}}; // 用嵌套for循环进行遍历,输出数组的值。 for(int i = 0; i<arr.length; i++){ for(int j = 0; j < arr[i].length; j++){ System.out.print(arr[i][j] + " "); } System.out.println(); } } }
5、总结
二维数组就是嵌套的一维数组,数组的元素从一些值变成一维数组,由一堆的一维数组组成了二维数组,同样也是运用for循环进行遍历,但是需要嵌套for循环遍历打印。
二、冒泡排序
1、冒泡排序原理
冒泡排序法是一种交换排序方法,其过程是首先将第一个记录的键值和第二个记录的键值进行比较,若为逆序,则将这两个记录交换,然后继续比较第二个和第三个记录的键值,以此类推,直到完成第n-1个记录和第n个记录的键值比较交换位置,此为一趟冒泡。要完成一组数字的排序就需要进行多次这样的冒泡。
2、排序步骤
3、演示图
4、代码演示
从小到大的排序:
public class bubble { public static void main(String[] args) { //冒泡排序算法 int[] numbers = new int[]{1, 5, 8, 2, 3, 9, 4}; //需进行length-1次冒泡 for (int i = 0; i < numbers.length - 1; i++) { //每完成一次冒泡后减少一次循环; for (int j = 0; j < numbers.length - 1 - i; j++) { if (numbers[j] > numbers[j + 1]) { //用一个temp作为中间值来完成交换的存储; int temp = numbers[j]; numbers[j] = numbers[j + 1]; numbers[j + 1] = temp; } } } System.out.println("从小到大排序后的结果是:"); //遍历数组打印输出; for (int i = 0; i < numbers.length; i++) System.out.print(numbers[i] + " "); } }
那么从大到小只需要改变一下方向即可,就是把if条件语句里面的大于改为小于,就改变了排序方向。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。