杨辉三角用了两种方法解决

二维数组/递归方法

+——————————————————————————

import java.util.Scanner;

public class YangHui02 {
/*
* 杨辉三角
* */
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入杨辉三角的行数");
int n = input.nextInt();

//定义一个二维数组
int[][] arr = new int[n][n];

//给这个二维数组任何一行的第一列和最后一列赋值为1
for(int i = 0;i < arr.length;i++){
arr[i][0] = 1; //任何一行的第一列
arr[i][i] = 1; //任何一行的最后一列
}

//从第三行开始,每一个数据是他上一行的前一列和它上一行当前列之和
for(int i = 2;i < arr.length;i++){
//如果 j < i 要考虑最后一列的问题
//所以这里要减去 1
for(int j = 1;j <= i - 1;j++){
arr[i][j] = arr[i -1][j - 1] + arr[i-1][j];
}
}

//遍历这个二维数组 形成九九乘法表
for(int i =0;i < arr.length;i++){
for(int x = 0;x < arr.length-i;x++){ //打印出空格
System.out.print(" ");
}

for(int j = 0; j <= i;j++){
System.out.printf("%4d",arr[i][j]);
}
System.out.println();
}

}
}

------——————————————

递归实现

public class YangHui {
public static int fun(int i,int j) {
if(j == 1 || i == j) {
return 1;
}else {
return fun(i-1,j)+fun(i-1,j-1);
}
}
public static void main(String[] args) {

int length = 10; // 打印的行数

for (int i = 1; i <= length; i++) { // 打印空格
for (int j = 1; j <= length-i; j++) {
System.out.print(" ");
}
for (int j = 1; j <= i; j++) {
System.out.printf("%4d",fun(i,j));
}
System.out.println();
}
}

}

Java实现杨辉三角的更多相关文章

  1. 使用Java打印杨辉三角

    package 杨辉三角; import java.util.Scanner; public class 三角 { private static Scanner scn; public static ...

  2. [Java练习题] -- 1. 使用java打印杨辉三角

    package cn.fzm.demo1.array; import java.util.Scanner; /* * 需求:打印杨辉三角形(行数可以键盘录入) 1 1 1 1 2 1 1 3 3 1 ...

  3. Java之杨辉三角的实现

    今天突然想温习一下Java的基础,想了想就写写杨辉三角吧 1.直接法,利用二维数组 import java.util.Scanner; public class Second { public sta ...

  4. java编写杨辉三角

    import java.util.Scanner; /* *计算杨辉三角: * 规律:两边都是1 * 从第三行开始,上一行的前一个元素+与其并排的元素等于下面的元素 * 例如: * 1 * 11 * ...

  5. Pascal's Triangle leetcode java(杨辉三角)

    题目: Given numRows, generate the first numRows of Pascal's triangle. For example, given numRows = 5, ...

  6. 用java输出杨辉三角

    杨辉三角:它的两个边都是1,内部其它都是肩上两个数的和 第一种: package aaa; public class YangHui { public static void main(String[ ...

  7. java实现杨辉三角系数

    ** 杨辉三角系数** (a+b)的n次幂的展开式中各项的系数很有规律,对于n=2,3,4时分别是:1 2 1, 1 3 3 1,1 4 6 4 1.这些系数构成了著名的杨辉三角形: 1 1 1 1 ...

  8. 【JAVA】杨辉三角

    ソース public Yanghui3jiao() { List<String[]> rowList = new ArrayList<String[]>(); List< ...

  9. Java的二维数组的应用及杨辉三角的编写

    (1) 编写一个程序,生成一个10*10的二维随机整数数组,并将该数组的每行最大值保存于一个一维数组中,将每列平均值保存于另外一个一维数组中并分别输出. (2) 编程输出杨辉三角的前10行. 找出一个 ...

随机推荐

  1. (一)初探Maven之本地安装与配置本地仓库

    引言:          大多数IDE都会自带maven,如果你打开c盘用户目录,你会看到一个.m2文件这就是编译器自带maven的仓库父目录,但由于其在C盘和其他原因,一般我们会自己重新安装mave ...

  2. es6常用语法学习笔记

    1.let和const的常规使用 let声明的变量不存在预解析 let声明的变量不允许重复使用(在同一个作用域内) ES6引入了块级作用域{},块内部定义的变量,在外部是不可以访问到的 使用let在f ...

  3. 带@的css语法,你知道多少?

    前言 css的顶层样式表由两种规则组成的规则列表构成,一种称为at—rule规则,也就是at规则,另一种是qualified rule,也就是普通规则.今天就学习一下at规则 正文 @charset ...

  4. P2P互联网金融企业的四大转型方向

    1.按照国标做成百分百的信息中介平台.这个定位太低,无利可图,如果政策导向真按着这个路径走,未来可能只剩下不到50家平台; 2.转型成为带“民营银行”属性的平台.这还得国家网开一面,学习英国模式,允许 ...

  5. docker部署redis及踩到的坑

    对docker很好奇,玩了一下,部署了一个redis,结果踩了很多坑 任务目的就是在docker中成功部署redis并保证数据持久化到本地,配置也使用本地配置 docker run -p : -v $ ...

  6. angular Observable

    1.回调函数 /** 1.设计实现函数 */ print_msg(msg) { console.log(msg); } /** 2.设计调用函数,param1:实现函数参数,param2:实现函数本身 ...

  7. 关于VC预定义常量_WIN32,WIN32,_WIN64等预定义宏的介绍(整理、转载)

    参考帖子: (1)MSDN上专门讲预定义宏:https://msdn.microsoft.com/en-us/library/b0084kay(v=vs.80).aspx (2)VS中属性页的配置介绍 ...

  8. centos7 把终端显示改为英文/中文

    把终端显示改为英文: 1.先备份语言配置文件 cp /etc/locale.conf /home/locale.conf.backup 2.打开配置文件 vim /etc/locale.conf 3. ...

  9. lua简单入门

    一.安装windows下的lua环境,luaforwindows 下载最新的5.3版本,下载地址: https://sourceforge.net/projects/luabinaries/files ...

  10. js 本地缓存localStorage

    .localStorage - 没有时间限制的数据存储 ,,]; localStorage.setItem("stor",arr); console.log(localStorag ...