介绍一下数组的基本算法:
1.求数组的最大值:
int[] arr = {1,3,5,13,6,7};
int length = arr.length;
int max = arr[0];
for(int i=0;i<arr.length;i++) {
if(arr[i]>max) {
max = arr[i];
}
}
System.out.println(max);//求数组最大值
2.倒序输出原数组问题:
int[] arr = {1,3,5,13,6,7};
int[] temp = new int[arr.length];
int index = 0;
for(int i=length-1;i>=0;i--) {
temp[index] = arr[i];
index++;
}
arr = temp;
for(int i:arr){
System.out.println(i);
}
3.冒泡法排序问题:
//冒泡排序从小到大:
int[] arr1 = {1,3,5,13,6,7};
int temp = 0;
for(int i=0;i<arr1.length-1;i++) //循环(数组长度-1)个轮次
{
for(int j=0;j<arr1.length-1-i;j++) {
if(arr1[j]>arr1[j+1]) {
temp = arr1[j];
arr1[j] = arr1[j+1];
arr1[j+1] = temp;
}
}
}
for(int x:arr1) {
System.out.print(x+",");
}
二维数组:输出杨辉三角:
int[][] YH = new int [10][];
for(int i=0;i<YH.length;i++) {
YH[i] = new int[i+1];
}
//2.显式的赋值
for(int i=0;i<YH.length;i++) {
YH[i][0] = 1;
YH[i][i] = 1;
if(i>1) {
for(int j=1;j<YH[i].length-1;j++) {
YH[i][j] = YH[i-1][j-1] + YH[i-1][j];
}
}
}
//3.打印输出
for(int[]i:YH) {
for(int j:i) {
System.out.print(j+" ");
}
System.out.println();
}