作者:小卢
专栏:《Leetcode》
喜欢的话:世间因为少年的挺身而出,而更加瑰丽。 ——《人民日报》
目录
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; }