二维数组经典练习题(一)

一、杨辉三角
输入行数n,输出对应行数的杨辉三角。
杨辉三角格式如下:

        1	
        1  1
        1  2  1
        1  3  3  1
        1  4  6  4  1
  
    规则:1.每一行元素数等于行数
               2.每一个元素值等于前一行同列元素与前一行前一列元素之和

代码如下:

public static void CreatYH(int n){
  int[][] arr = new int[n][n];//创建一个n行n列的数组,存放元素
  arr[0] = Arrays.copyOf(arr[0], 1);//初始化前两行数组长度
  arr[1] = Arrays.copyOf(arr[1], 2);
  for(int i = 0; i

测试:

public static void main(String[] args) {
  CreatYH(10);
 }

二、螺旋填数
创建一个m行n列的数组,将1–m*n的数字螺旋填入,方向为右下左上
输出效果为:
[1 , 2 , 3 , 4 , 5]
[14, 15, 16, 17, 6]
[13, 20, 19, 18, 7]
[12, 11, 10, 9, 8]

代码如下:

public static void FillNum(int m,int n){
  int[][] arr = new int[m][n];//初始化
  int x = 0;//行数
  int y = 0;//列数
  int contral = 0;//方向控制变量
  for(int i = 0;i

测试:

public static void main(String[] args) {
  FillNum(4, 5);
 }

你可能感兴趣的:(java)