package _5_4_数组的基本操作; public class _5_4_Example_1 { public static void main(String[] args) { // TODO 自动生成的方法存根 //遍历一维数组 System.out.println("遍历一维数组:"); int month[]={31,28,31,30,31,30,31,31,30,31,30,31}; for(int i=0;i<month.length;i++){ System.out.println("第"+(i+1)+"月有"+month[i]+"天"); } //遍历二维数组 System.out.println("遍历二维数组:"); int array[][]=new int[][]{{1,8,9},{4,3,5,6},{9,8}}; for(int i=0;i<array.length;i++){ for(int j=0;j<array[i].length;j++) System.out.print(array[i][j]+"\t"); System.out.println(); } //使用foreach语句遍历数组 for(int[] arr : array){ for(int x : arr) System.out.print(x+"\t"); System.out.println(); } } }
package _5_4_数组的基本操作; import java.util.Arrays; //填充替换数组元素 public class _5_4_Example_2 { public static void main(String[] args) { // TODO 自动生成的方法存根 //fill(int []a,int value)将指定int型元素分配给int型数组的每个元素 int a[]=new int[6]; System.out.println("未赋值的数组:"); for(int i=0;i<a.length;i++) System.out.print(a[i]+" "); Arrays.fill(a, 8); System.out.println("\n修改后的数组:"); for(int i=0;i<a.length;i++) System.out.print(a[i]+" "); //包括起点不包括终点的替换 //fill(int []a,int fromIndex,int toIndex,val) Arrays.fill(a, 1, 4, 15); System.out.println("\n修改后的数组:"); for(int i=0;i<a.length;i++) System.out.print(a[i]+" "); //对数组进行排序 int arr[]={34,4,13,76,6,9,790,89}; System.out.println("\n\n原数组:"); for(int i=0;i<arr.length;i++) System.out.print(arr[i]+" "); Arrays.sort(arr);//升序排序 System.out.println("\n排序后的数组:"); for(int i=0;i<arr.length;i++) System.out.print(arr[i]+" "); //复制数组 //copyOf()复制数组至指定长度 //copyOfRange()将指定数组制定长度复制到一个新的数组中 int array_1[]={3,6,9,23,45,78}; System.out.println("\n\n原数组:"); for(int i=0;i<array_1.length;i++) System.out.print(array_1[i]+" "); int[] newArray_1=Arrays.copyOf(array_1, 8); System.out.println("\n调用copyOf(),新数组:"); for(int i=0;i<newArray_1.length;i++) System.out.print(newArray_1[i]+" "); int[] newArray_2=Arrays.copyOfRange(array_1, 1, 7); System.out.println("\n调用copyOfRange(),新数组:"); for(int i=0;i<newArray_2.length;i++) System.out.print(newArray_2[i]+" "); } }
package _5_4_数组的基本操作; public class _5_4_Example_3 { public static void main(String[] args) { // TODO 自动生成的方法存根 //对比一维二维数组所占内存 //一维数组占用内存 int num1=1024*1024*2;//数组元素个数 int array1 []=new int[num1];//定义int型数组 for(int i=0;i<array1.length;i++)//赋值 array1[i]=i; //获得占用内存数,并将其转化为MB long memory1=Runtime.getRuntime().totalMemory()/1024/1024; System.out.println("一维数组占用内存:"+memory1); //二维数组占用内存 int num2=1024*1024;//数组元素个数 int array2 [][]=new int[num2][2];//定义int型数组 for(int i=0;i<array2.length;i++)//赋值 { array2[i][0]=i; array2[i][1]=i; } //获得占用内存数,并将其转化为MB long memory2=Runtime.getRuntime().totalMemory()/1024/1024; System.out.println("二维数组占用内存:"+memory2); } }
package _5_4_数组的基本操作; //使用直接插入法排序 public class _5_4_Example_4 { public static void main(String[] args) { // TODO 自动生成的方法存根 int number=10; int intArray []=new int[number]; System.out.println("排序前:"); for(int i=0;i<intArray.length;i++) { intArray[i]=intArray.length-i; System.out.print(intArray[i]+" "); } //插入排序算法:每次插入的数前面的数都是排好序的 for(int i=1;i<intArray.length;i++) { int j=i-1; int index=intArray[i];//记录index一便宜之后的交换 while(j>=0&&intArray[j]>intArray[j+1]) { //每当找到比这个数大的数的时候就交换, //直到之前的数没有比这个数大的 intArray[j+1]=intArray[j];// intArray[j]=index; j--; } } System.out.println("\n排序后:"); for(int i=0;i<intArray.length;i++) System.out.print(intArray[i]+" "); } }
package _5_4_数组的基本操作; //使用冒泡排序法排序 public class _5_4_Exercise_1 { public static void main(String[] args) { // TODO 自动生成的方法存根 int number=10; int array[]=new int[number]; System.out.println("冒泡排序前数组为:"); for(int i=0;i<array.length;i++){ array[i]=array.length-i; System.out.print(array[i]+" "); } System.out.println(); //冒泡排序:较小元素向前排,较大元素向后排 //for(int i=0;i<array.length-1;i++) //上面注释中写的也可以,因为最后一趟就一个元素,不需比较,只用九趟就行 for(int i=0;i<array.length;i++){//每一趟循环都找出较小的向前排 for(int j=array.length-1;j>0;j--){ if(array[j]<array[j-1]){//把较小元素循环向前排 int temp=array[j]; array[j]=array[j-1]; array[j-1]=temp; } } System.out.println("第"+(i+1)+"趟循环得到:"); for(int k=0;k<array.length;k++) System.out.print(array[k]+" "); System.out.println(); } } }
package _5_4_数组的基本操作; //输出九宫格:数字1-9组成3*3矩阵,使得行列对角线三个数之和等于15 //采用循环求解 //九宫格分为中,上,下,左,右,左上,右上,左下,右下 public class _5_4_Exercise_2 { public static void main(String[] args) { // TODO 自动生成的方法存根 int arr[][]=new int[3][3]; int a=2;//第三行的行下标 int b=3/2;//第二列的列下标 for(int i=1;i<=9;i++){ arr[a++][b++]=i; if(i%3==0){//如果i是3的倍数 a=a-2; b=b-1; }else{//如果i不是3的倍数 a=a%3; b=b%3; } } System.out.println("输出九宫格:"); for(int i=0;i<3;i++){ for(int j=0;j<3;j++) System.out.print(arr[i][j]+" "); System.out.println(); } } }
相关推荐
java数组的基本操作 查找最大元素 选择排序 优化选择排序 冒泡排序 交换数组元素
二维数组基本操作的编程实现 要求: 二维数组基本操作的编程实现(2学时,验证型),掌握数组的建立、读取数据、压缩存储等基本操作的编程实现,存储结构可以在顺序结构或链接结构中任选,也可以全部实现。也鼓励...
python 中数组的基本操作.pdf python 中数组的基本操作.pdf python 中数组的基本操作.pdf python 中数组的基本操作.pdf python 中数组的基本操作.pdf python 中数组的基本操作.pdf python 中数组的基本操作.pdf ...
数组与特殊矩阵基本操作及练习
4.数组基本操作.ipynb
讲述C语言数组的基本知识和操作,很值得初学者去学习和了解。
数组基本操作 数组基本操作 创建数组 创建数组的两种常见方式的用法: 使用“new Array()”创建数组 使用“[ ]”字面量来创建数组 // 使用new Array()创建数组 var arr1 = new Array(); // 使用字面量来创建数组 var...
基本操作 学习目标 1 进一步熟记对二维数组元素 的访问; 2 掌握以矩阵形式输出二维数 组元素; 3 掌握求二维数组所有元素和 的操作; 学习目标 4 掌握求二维数组正对角线元 素和的操作; 55 了解求二维数组最大值的...
c语言数组。 c语言数组 基本操作.docx
二维数组基本操作的功能有:键盘输入稀疏矩阵,随机产生稀疏矩阵,显示稀疏矩阵,压缩稀疏矩阵,显示压缩稀疏矩阵,解压稀疏矩阵,等等。
Java数组的基本操作
用数组实现对栈的操作,如入栈,退栈,清空,输出等
二维数组基本操作.exe
java100例之实例3 演示一维数组和多维数组的初始化和基本操作.rar
(1) 基本运算符 5 (2) 位运算符(~(非运算)、&(与运算)、|(或运算)、^(异或运算)) 5 (3) Boolean运算(!(求反运算)、&&(与运算)、||(或运算)) 6 (4) 关系运算(<、>、、>=、==、!=) 6 (5) 等性运算符(==、===、!=、!==)...
数组的基本操作,包括:数组串并联,数组大小,提取数组等
一维数组基本操作的 C++代码一维数组类// 数组的初始构造函数// 数组的复制构造函数// 为复制数组申请空间// 复制数组元素// 重载下标符运算符 []/
NULL 博文链接:https://yangzhizhen.iteye.com/blog/1457191
数据结构之使用C++语言中的数组实现二叉树的存储及其基本操作