12.21 力扣题目 (一维数组的动态和)

题目

给你一个数组 nums 。数组「动态和」的计算公式为:runningSum[i] = sum(nums[0]…nums[i]) 。

请返回 nums 的动态和。

思路

遍历原数组 新数组第一个元素不变 第二个元素等于原数组的第i个数加新数组的第j-1位数,中间需要判断一次J=0的情况,J=0时J-1会出现下标越界的情况,然后用一个参数接受结果集,然后遍历该数组,输出新数组的元素

遇到的问题

数组的定义三种定义方式:

数组存储的数据类型[] 数组名字 = new 数组存储的数据类型[长度]

int[] arr = new int[3]; 

数组存储的数据类型[] 数组名字 = new 数组存储的数据类型[]{数组元素1,数组元素2,数组元素3};

int[] arr = new int[]{1,2,3,4,5};

数组存储的数据类型[] 数组名字 = {数组元素1,数组元素2,数组元素3};

int[] arr = {1,2,3,4,5};

局部变量和全局变量

局部变量:
(1)在一个函数内部定义的变量,它只在本函数范围内有效,也就是说只有在本函数内才能使用它们,在此函数以外是不能使用这些变量的
(2)形参属于局部变量
(3)在函数声明中出现的参数名,其作用范围只在本行的括号内
全局变量:
(1)在函数内定义的变量是局部变量
(2)在函数之外定义的变量是外部变量,称为全局变量(global variable,也称全程变量)。
(3)全局变量的有效范围为从定义变量的位置开始到本源文件结束。
静态变量:
方法外部、类的内部定义的变量,加上了关键字“static”(数据段,长驻内存,虚拟机关闭时消失。)

静态变量可以通过对象和类名访问,成员变量只能通过对象访问。

if语句的格式


//if语句的三种格式
        
//格式1        
        if(比较表达式){
            语句体;
        }
        
//格式2
        if(比较表达式){
            语句体1;
        }else{
            语句体2;
        }
        
//格式3
        if(比较表达式1){
            语句体1;
        }else if(比较表达式2){
            语句体2;
        }else if(比较表达式3){
            语句体3;
        }
        ...
        else{
            语句体n+1
        }

关系运算符

1、==是相等运算符。 如果两个操作数都引用同一个对象,则返回true,否则返回false。
2、!=适用于非等号运算符。 如果两个操作数都引用不同的对象,则返回true,否则返回false。
3、<小于运算符。
4、>大于运算符。
5、<=小于或等于运算符。
6、> =大于或等于运算符。
注意:=是赋值操作 ==才是布尔值判断

代码


public class RunningSum {


    public static void main(String[] args) {
        int[] nums = {1, 2, 3, 4};
        int[] result = runningSum(nums);
        for (int i = 0; i < result.length; i++) {
            System.out.println(result[i]);
        }

    }

    public static int[] runningSum(int[] nums) {
        int j = 0;
        int[] result = new int[nums.length];
        for (int i = 0; i < nums.length; i++) {
            if(j == 0){
                result[j] = nums[i];
            }else {
                result[j] = nums[i] + result[j - 1];
            }
            j++;
        }


        return result;
    }


}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值