杨辉三角形的两种方法
来源:互联网 发布:盒子k歌软件 编辑:程序博客网 时间:2024/05/24 04:51
//杨辉三角形
/*
* 思路:1、定义二维数组
* 2、遍历数组的每一行,给每一行的第一列和最后一列,均赋值为1
* 3、遍历每一行的列,并给num[i][j]赋值
//第一种写法
Scanner cin=new Scanner(System.in);
System.out.println("请输入一个正整数:");
int n=cin.nextInt();
int trigle[][]=new int[n][n];
for(int i=0;i<n;i++){
trigle[i][0]=trigle[i][i]=1; //第一列和每一行的最后一列,均赋值为1
for(int j=1;j<i;j++){
trigle[i][j]=trigle[i-1][j]+trigle[i-1][j-1];
}
}
for(int i=0;i<n;i++){
for(int j=0;j<=i;j++){
System.out.print(trigle[i][j]+" ");
}
System.out.println();
}
//第二种写法
int num[][]=new int[8][];
for(int i=0;i<num.length;i++){ //遍历每一行
num[i]=new int[i+1]; //给每一行定义长度,长度大于1,所以加1
for(int j=0;j<=num[i].length-1;j++){ //遍历列
if(i==0||j==0||j==num[i].length-1){ //第一行和第一列和最后一列,赋值1
num[i][j]=1;
}else{
num[i][j]=num[i-1][j]+num[i-1][j-1];
}
System.out.print(num[i][j]+"\t");
}
System.out.println();
}
/*
* 思路:1、定义二维数组
* 2、遍历数组的每一行,给每一行的第一列和最后一列,均赋值为1
* 3、遍历每一行的列,并给num[i][j]赋值
* 4、循环输出
*/
public static void main(String[] args) {//第一种写法
Scanner cin=new Scanner(System.in);
System.out.println("请输入一个正整数:");
int n=cin.nextInt();
int trigle[][]=new int[n][n];
for(int i=0;i<n;i++){
trigle[i][0]=trigle[i][i]=1; //第一列和每一行的最后一列,均赋值为1
for(int j=1;j<i;j++){
trigle[i][j]=trigle[i-1][j]+trigle[i-1][j-1];
}
}
for(int i=0;i<n;i++){
for(int j=0;j<=i;j++){
System.out.print(trigle[i][j]+" ");
}
System.out.println();
}
//第二种写法
int num[][]=new int[8][];
for(int i=0;i<num.length;i++){ //遍历每一行
num[i]=new int[i+1]; //给每一行定义长度,长度大于1,所以加1
for(int j=0;j<=num[i].length-1;j++){ //遍历列
if(i==0||j==0||j==num[i].length-1){ //第一行和第一列和最后一列,赋值1
num[i][j]=1;
}else{
num[i][j]=num[i-1][j]+num[i-1][j-1];
}
System.out.print(num[i][j]+"\t");
}
System.out.println();
}
阅读全文
1 0
- 杨辉三角形的两种方法
- css实现三角形的两种方法
- C#杨辉三角形两种实现方法
- 杨辉三角形(pascal triangle)的两种不同思路的C实现方法
- 杨辉三角形(pascal triangle)的两种不同思路的C实现方法
- 三角形的两种画法
- 杨辉三角形(第十五周上机任务)(两种方法)
- [Wikioi 1220]数字三角形---两种不同的解法(复习)
- 打印杨辉三角的两种方法
- 两种方法打印杨辉三角
- popup的两种方法
- 数据库连接的两种方法
- Query的两种方法
- 多线程的两种方法
- 学习的两种方法
- 链表逆置的两种方法
- Crontab的两种方法。
- 缓存的两种方法
- overload, override, and redefine
- Phantomjs selenium python爬虫alert confirm 弹窗处理方法
- 关于Vuforia云识别的粒子特效无法正常显示问题
- JavaScript 事件参考手册
- Git详解之六 Git工具
- 杨辉三角形的两种方法
- IntelliJ IDEA日常配置与使用
- JavaScript中函数参数的传递
- 360面试防火墙、IDS运维工程师心得
- lua获取post请求的参数
- 机器学习资料集合
- SpringMVC与Struts2区别与比较总结
- Ubuntu16.04安装Apache+MySQL+PHP
- js加载优化:Script DOM Element