蓝桥杯 基础练习 杨辉三角形 java

本文介绍了蓝桥杯基础练习中的杨辉三角形问题,解析了解题思路和Java代码实现。重点在于使用双数组策略,通过两层循环完成层次遍历。注意避免数组长度混淆和对象赋值导致的错误,建议使用临时变量或数组拷贝确保数据独立。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Basic6 基础练习 杨辉三角形

题目如下:

image-20200714211456589

这道题其实是很经典的,身为基础题,讲道理是很好做的,但今天不知道为啥,磨叽了很久才写好

这道题的解法是这样的,这里运用了双数组来解决,array1就代表着当前那层的数,而array2就是通过当前层得到的下一层的数,因为数据也是一层层输出的,所以这样写比较好。

所以算法的核心就是两层循环,第一次循环代表着层数,就是从第一层到第n层,第二层循环就是输出当前层的数以及得到下一层数的一个过程。

坑点有两个,第一个就是array.length可不是你填的数的个数,而是你创建数组时给的长度,这点我竟然忘了,fuck。第二个就是对象的赋值了,我当时直接在第一层循环结束时,将下一层的数赋值给当前层(就是代表着当前层往下移动了)。这样两个变量就引用了同一个数组,所以下一次循环修改array2时也相当于修改了array1。所以最好就是把array2当作循环中的临时变量。当然也可以用数组拷贝的方式进行。

package basic;

import java.util.Scanner;

/**
 * @Description: 基础练习 杨辉三角形
 * @ClassName: Basic6
 * @author: fan.yang
 * @date: 2020/07/14 19:55
 */
public class Basic6 {
   

    public static void main
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值