java int类型二维数组实现“杨辉三角”的完整实例
杨辉三角的规律:
1.每行的数据个数和在第几行一样。
2.每行第一个数和最后一个数都是1.
3.每行除了第一个数据和最后一个数据 其他数据的值等于上面一行的对应列的值和左对角值的和。例如:a[2][1]=a[1][0]+a[1][1]
根据上面的规律我们设计程序
private static void demo(){ int[][] ints = new int[10][]; //动态给ints数组的一维赋值一个不同的数组 for (int i = 0; i < ints.length; i++) { ints[i]=new int[i+1]; } /*根据杨辉三角的算法设计程序*/ for (int i = 0; i < ints.length; i++) { for (int j = 0; j < i; j++) { if(j==0 || j==i){ ints[i][j]=1; }else { ints[i][j]=ints[i-1][j-1]+ints[i-1][j]; } } } /*遍历ints数组*/ for (int i = 0; i < ints.length; i++) { for (int j = 0; j < i; j++) { System.out.print(ints[i][j]+" "); } System.out.println(); } }
调用方法:
public static void main(String[] args) { demo(); }
运行结果:
总结
到此这篇关于java int类型二维数组实现“杨辉三角”的文章就介绍到这了,更多相关java int类型二维数组实现杨辉三角内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
相关推荐
-
Java算法实现杨辉三角的讲解
又写了个算法题,著名的杨辉三角,哈哈,直接进入主题吧! 先给大家简单介绍一下吧: 杨辉三角的每个数等于它上方两数之和. 在百度上找了张图给大家理解 大家可以自己分析一下,我直接上代码,在代码里面讲解 public class trangle { public static void main(String[] args) { int x=8; //我们先定义8行的数组,这里可以随意设置哦 int[][] arg=new int[x][x];//定义一个二维数组 for(int i=0;i<x;i
-
java使用for循环输出杨辉三角
思路是创建一个整型二维数组,包含10个一维数组.使用双层循环,在外层循环中初始化每一个第二层数组的大小.在内层循环中,先将两侧的数组元素赋值为1,其他数值通过公式计算,然后输出数组元素. 复制代码 代码如下: public class YanghuiTriangle { public static void main(String[] args) { int triangle[][]=new int[10][];// 创建二维数组 // 遍历二维数组的第一层
-
基于Java实现杨辉三角 LeetCode Pascal's Triangle
Pascal's Triangle Given numRows, generate the first numRows of Pascal's triangle. For example, given numRows = 5, Return [ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1] ] 这道题比较简单, 杨辉三角, 可以用这一列的元素等于它头顶两元素的和来求. 数学扎实的人会看出, 其实每一列都是数学里的排列组合, 第4行, 可以用 C30 =
-
用java实现杨辉三角的示例代码
之前有学弟问过我一道java的面试题,题目不算难.用java实现杨辉三角.我花了点时间整理了一下,发现挺有意思的,于是想写下来分享一下.在写代码之前,我们先理清下面两个问题. 什么是杨辉三角 杨辉三角,是二项式系数在三角形中的一种几何排列.在我国南宋数学家杨辉1261年所著的<详解九章算法>有提到过.在欧洲叫做帕斯卡三角形,如图. 杨辉三角 杨辉三角的规律即原理 1.每个数等于它上方两数之和. 2.每行数字左右对称,由1开始逐渐变大. 3.第n行的数字有n项. 4.第n行数字和为2n-1. 5
-
java编程实现杨辉三角两种输出结果实例代码
首先展示下结果: 简介: 杨辉三角,是二项式系数在三角形中的一种几何排列.在欧洲,这个表叫做帕斯卡三角形.帕斯卡(1623----1662)是在1654年发现这一规律的,比杨辉要迟393年,比贾宪迟600年.杨辉三角是中国古代数学的杰出研究成果之一,它把二项式系数图形化,把组合数内在的一些代数性质直观地从图形中体现出来,是一种离散型的数与形的优美结合. 实例代码如下: package com.sxt; import java.util.Arrays; public class KeBen { p
-
java int类型二维数组实现“杨辉三角”的完整实例
杨辉三角的规律: 1.每行的数据个数和在第几行一样. 2.每行第一个数和最后一个数都是1. 3.每行除了第一个数据和最后一个数据 其他数据的值等于上面一行的对应列的值和左对角值的和.例如:a[2][1]=a[1][0]+a[1][1] 根据上面的规律我们设计程序 private static void demo(){ int[][] ints = new int[10][]; //动态给ints数组的一维赋值一个不同的数组 for (int i = 0; i < ints.length; i++
-
Java 轻松实现二维数组与稀疏数组互转
目录 二维数组 稀疏数组 1.稀疏算法的基本介绍 2.稀疏算法的处理方式 二维数组转稀疏数组的思路 二维数组 二维数组本质上是以数组作为数组元素的数组,即“数组的数组”,类型说明符 数组名[常量表达式][常量表达式].二维数组又称为矩阵,行列数相等的矩阵称为方阵.对称矩阵a[i][j] = a[j][i],对角矩阵:n阶方阵主对角线外都是零元素. 稀疏数组 1.稀疏算法的基本介绍 当一个数组中大部分元素为0,或者为同一个值的数组时,可以使用稀疏数组来保存该数组.从而减少计算机不必要的内存开销.
-
Java数据结构实现二维数组与稀疏数组转换详解
基本介绍 当一个数组中大部分元素为0,或者为同一个值的数组时,可以使用稀疏数组来保存该数组. 稀疏数组的处理方法是: ①记录数组一共有几行几列,有多少个不同的值(0除外). ②把具有不同值的元素的行列及值记录在一个小规模的数组中,从而缩小程序的规模. 二维数组转稀疏数组: ①遍历原始的二维数组,得到有效数据的个数 sum(除0外不同值) ②根据 sum 创建稀疏数组 sparseArr int[sum+1][3] ③将二维数组的有效数据数据存入到稀疏数组 (稀疏数组的第一行,三列分别记录二维数组
-
Java中的二维数组的赋值与输出方式
目录 二维数组的赋值与输出 随机给二维数组赋值,打印输出每个元素 题目 二维数组的赋值与输出 public class Demo1 { public static void main(String[] args) { //声明一个二维数组:有三行,列数待定,数组结构表示为{{ },{ },{ }} String s[][]=new String[3][];//动态赋值二维数组 s[0]=new String[3]; s[1]=new String[2]; s[2]=new String[3];
-
Java中一维二维数组的静态和动态初始化
今天我们要开始来讲讲Java中的数组,包括一维数组和二维数组的静态初始化和动态初始化 数组概述: 数组可以看成是多个相同类型数据的组合,对这些数据的统一管理; 数组变量属于引用数据类型,数组也可以看成是对象,数组中的每一个元素相当于该对象的成员变量; 数组中的元素可以是任何数据类型,包括基本数据类型和引用数据类型; 一维数组的声明: 声明方式: 例如; int a [ ] = new int [3]; Java语言中 声明是不能指定其长度[数组中元素的个数]; 非法声明; int a [5];
-
Java 如何用二维数组创建空心菱形
目录 如何用二维数组创建空心菱形 题目:用“*”创建一个菱形空心 使用数组打印实心菱形 二维数组的输出(其中一种方法) 正式代码 如何用二维数组创建空心菱形 提供一个我自己的实现方法,方法实现只是一个人的是靠方式,并不是代表实力,真正的实力用自己的这种思维解决别人亟待解决的问题,真才是目前我觉得的编程的意义.鸡汤喝了,精神好了!来看看我的实例. 题目:用“*”创建一个菱形空心 为了能更好的找出横纵坐标的关系,我简单做了一个菱形图 图1.菱形 从图中可以找出*点与坐标值的意义,所以此题是用二维坐标
-
Java如何将二维数组转化为一维数组
目录 将二维数组转化为一维数组 一维数组转化为二维数组 将二维数组转化为一维数组 1. 为了偷懒所以我写了一个随机生成二维数组的函数 /* * 自动创建随机为100以内的二维数组: int nums[x][y] * */ public static int[][] CreatedDemArray(int x,int y){ int nums[][]=new int[x][y]; for(int i=0;i<nums.length;i++){ for(int j=0;j<nums[i].leng
-
javascript二维数组和对象的深拷贝与浅拷贝实例分析
本文实例讲述了javascript二维数组和对象的深拷贝与浅拷贝.分享给大家供大家参考,具体如下: 这篇文章主要为大家详细介绍了js实现数组和对象的深浅拷贝, 1.浅拷贝: 将原对象或原数组的引用直接赋给新对象,新数组,新对象/数组只是原对象的一个引用 2.深拷贝: 创建一个新的对象和数组,将原对象的各项属性的"值"(数组的所有元素)拷贝过来,是"值"而不是"引用" JavaScript的数据类型分为原始数据类型和对象类型.二者在内存中存放的方式
-
php二维数组按某个键值排序的实例讲解
排序前 Array ( [0] => Array ( [name] => 龙 [age] => 2017-02-28 ) [1] => Array ( [name] => 龙2 [age] => 2017-03-14 ) [2] => Array ( [name] => 小3 [age] => 2017-05-09 ) [3] => Array ( [name] => 龙4 [age] => 2017-02-03 ) [4] =>
-
Java 二维数组创建及使用方式
目录 二维数组的创建 二维数组基本使用 1. 二维数组的使用 2. 使用方式 1: 动态初始化 3. 使用方式 2: 动态初始化 4. 使用方式 3: 动态初始化-列数不确 5. 使用方式 4: 静态初始化 6. 二维数组的应用案例 7. 二维数组使用细节和注意事项 8. 二维数组课堂练习 二维数组的创建 二维数组好比一个表格,第一个下标表示行,第二个下标表示列,数组的创建和初始化与一位数组一模一样,及二维数组就是一个把多个一维数组包起来的数组. 数组的创建: type[][] arrayNam
随机推荐
- 页面按钮禁用与解除禁用的方法
- PHP UTF8中文字符截断函数代码
- AngularJS解决ng-if中的ng-model值无效的问题
- Spring boot集成Mybatis的方法教程
- ie发送ajax请求返回上一次结果的解决方法
- javascript二维数组转置实例
- php上传文件并存储到mysql数据库的方法
- 浅谈ThinkPHP的URL重写
- yii数据库的查询方法
- 常用的JQuery数字类型验证正则表达式整理
- C++ 中字符串操作--宽窄字符转换的实例详解
- linux mysql忘记密码的多种解决或Access denied for user 'root'@'localhost'
- 基于javascript制作经典传统的拼图游戏
- Java中常见的日期操作(取值、转换、加减、比较)
- Nodejs初级阶段之express
- 解决在SQL脚本中的注释引起的奇怪问题
- jquery实现下拉框功能效果【实例代码】
- JS中的数组的sort方法使用示例
- 简介C++编程中的运算符重载
- PHP内置过滤器FILTER使用实例