【Leetcode】1480. 一维数组的动态和、35. 搜索插入位置

 作者:小卢

专栏:《Leetcode》

喜欢的话:世间因为少年的挺身而出,而更加瑰丽。                                  ——《人民日报》


目录

1480. 一维数组的动态和

35. 搜索插入位置


1480. 一维数组的动态和

题目描述:

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

请返回 nums 的动态和。

示例:

 思路:

nums[i]=nums[i-1]+nums[i]

代码:

int* runningSum(int* nums, int numsSize, int* returnSize){
    *returnSize=numsSize;
    for(int i=1;i<numsSize;i++)
       nums[i]=nums[i-1]+nums[i];
    return nums;
}

35. 搜索插入位置

题目描述:

给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。

请必须使用时间复杂度为 O(log n) 的算法。

示例:

代码:

int searchInsert(int* nums, int numsSize, int target){
    int left=0;
    int right=numsSize-1;
    while(left<=right)
    {
        int mid=(left+right)/2;
         if(nums[mid]==target)
         return mid;
        if(nums[mid]>target)
        right=mid-1;
        else
        left=mid+1;
    }
    return left;
}

猜你喜欢

转载自blog.csdn.net/m0_69061857/article/details/129390773