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

二维数组/递归方法

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

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. luasocket编译安装遇到的坑

    由于需要获得本机的IP地址,所以需要 : local socket = require('socket') local server_hostname = socket.dns.gethostname ...

  2. Springboot 项目启动后执行某些自定义代码

    Springboot 项目启动后执行某些自定义代码 Springboot给我们提供了两种"开机启动"某些方法的方式:ApplicationRunner和CommandLineRun ...

  3. HDU-1398 Square Coins(生成函数)

    题意 与$hdu1028$类似,只不过可用的数字都是平方数. 思路 类似的思路,注意下细节. 代码 #include <bits/stdc++.h> #define DBG(x) cerr ...

  4. Codeforces Round #551 (Div. 2) D. Serval and Rooted Tree (树形dp)

    题目链接 题意:给你一个有根树,假设有k个叶子节点,你可以给每个叶子节点编个号,要求编号不重复且在1-k以内.然后根据节点的max,minmax,minmax,min信息更新节点的值,要求根节点的值最 ...

  5. 获取电脑系统唯一GUID

    软件使用微软系统的唯一ID绑定指定电脑 class Program { static void Main(string[] args) { string sysId = ""; P ...

  6. Collection和Map类图预览与比较

    类图 HashSet和TreeSet的区别:https://www.cnblogs.com/bobi1234/p/10759769.html HashSet和LinkedHashSet区别:https ...

  7. 419 JQuery and BootStrap

    把葵花宝典剩下的知识讲完了 又学习了bootstrap <link rel="stylesheet" href="css/bootstrap.css"&g ...

  8. ddt源码修改:HtmlTestRunner报告依据接口名显示用例名字

    背景是这样的: 自己写了一套接口自动化的框架,其中使用unittest + ddt + excel作为数据驱动模式的应用,使用HtmlTetstRunner来生成测试用例. 一切看起来很完美. 但是, ...

  9. Leetcode-35.搜索插入位置

    题目描述: 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果目标值不存在于数组中,返回它将会被按顺序插入的位置. 你可以假设数组中无重复元素. 示例 1: 输入: [1,3,5,6 ...

  10. 分组PARTITION BY及游标CURSOR的用法

    基础数据表: select * from dbo.RecommendationChanelVersionRelation: 数据如下: 要求按照ChannelVersionID分组,对每组中的Orde ...