栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java案例:实现杨辉三角

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java案例:实现杨辉三角

Java案例:实现杨辉三角
前言

本篇文章我将讲述使用Java实现杨辉三角的实现,而且可以根据用户输入的正整数输出指定行数的杨辉三角。


一、杨辉三角是什么?

杨辉三角,是二项式系数在三角形中的一种几何排列,中国南宋数学家杨辉1261年所著的《详解九章算法》一书中出现。在欧洲,帕斯卡(1623----1662)在1654年发现这一规律,所以这个表又叫做帕斯卡三角形。帕斯卡的发现比杨辉要迟393年,比贾宪迟600年。
如果大家想要了解更多的详细信息,可以查看百度的相关解释以及其他的相关知识:链接如下:

  • https://baike.baidu.com/item/%E6%9D%A8%E8%BE%89%E4%B8%89%E8%A7%92/215098?fr=aladdin
图示如下:

二、解题思路
  • 因为这个杨辉三角涉及到行与列,所以需要使用二维列表
  • 其次我们需要考虑杨辉三角的相关特性:
  • 首先每一行的第一个和最后一个元素都是1
  • 其次处于首尾之间的元素的值都是与同列的上一个元素和左上角的元素有关的,具体关系如下:
// arr为二维数组,i为行,j为列
arr1[i][j] = arr1[i - 1][j] + arr1[i - 1][j - 1];
三,代码实现

import java.util.Scanner;

public class ArrayTriTest {
	
	public static void main(String[] args) {
		
		// 1.提示用户输入一个正整数行数
		System.out.println("请输入一个正整数的行数:");
		Scanner sc = new Scanner(System.in);
		int num = sc.nextInt();
		
		// 2.申请一个二维数组
		int[][] arr1 = new int[num][];
		
		// 3.初始化二维数组
		for(int i = 0; i < arr1.length; i++) {
			arr1[i] = new int[i + 1];
			for(int j = 0; j < i + 1; j++) {
				if(0 == j || i == j) {
					arr1[i][0] = arr1[i][i] = 1;
				} else {
					arr1[i][j] = arr1[i - 1][j] + arr1[i - 1][j - 1];
				}
			}
		}
		
		System.out.println("n========================================");
		// 4.打印输出二维数组的所有元素
		for(int i = 0; i < arr1.length; i++) {
			for(int j = 0; j < arr1[i].length; j++) {
				System.out.print(arr1[i][j] + "t");
			}
			System.out.println();
		}
	}
}



总结

好了,到这里就已经用Java实现了杨辉三角的功能,如果有什么问题的小伙伴可以留言讨论,我们一起学习进步,记录Java的点点滴滴。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/439365.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号