LeetCode977 有序数组的平方
题目链接:https://leetcode.cn/problems/squares-of-a-sorted-array/
文章讲解:代码随想录
视频讲解:https://www.bilibili.com/video/BV1QB4y1D7ep
状态:✅
/**
* @param {number[]} nums
* @return {number[]}
*/
var sortedSquares = function (nums) {
let result = []
let i = 0,j = nums.length - 1,k = nums.length - 1;
// 这里如果i 大于 j 则跳出循环
while(i <= j){
let left = nums[i] * nums[i]
let right = nums[j] * nums[j]
if(left > right){
result[k] = left
k--
i++
}else{
// 这里else 是 right > left 和 right == left,如果两个相等取谁没有区别
result[k] = right
k--
j--
}
}
return result
};
LeetCode209 长度最小的子数组
题目链接:https://leetcode.cn/problems/minimum-size-subarray-sum/
文章讲解:代码随想录
视频讲解:https://www.bilibili.com/video/BV1tZ4y1q7XE
状态:✅
/**
* @param {number} target
* @param {number[]} nums
* @return {number}
*/
var minSubArrayLen = function(target, nums) {
let i = 0
let sum = 0
let result = Infinity
for(let j = 0;j<= nums.length;j++){
sum += nums[j]
while(sum >= target){
let subL = j - i + 1
result = Math.min(result,subL)
sum = sum - nums[i]
i++
}
}
// 这里是因为测试用例数组的和小于target,会直接返回Infinity,所以这里面使用三元表达式,如果result == Infinity就返回0,否则返回result
return result === Infinity ? 0 : result;
};
LeetCode59 螺旋矩阵II
题目链接:https://leetcode.cn/problems/minimum-size-subarray-sum/
文章讲解:代码随想录
视频讲解:https://www.bilibili.com/video/BV1tZ4y1q7XE
状态:❎
var removeElement = function(nums, val) {
let slow = 0
for(let fast = 0;fast < nums.length;fast++){
if(nums[fast] !== val){
nums[slow] = nums[fast]
slow++
}
}
return slow
};