贪心算法
455.分发饼干
解题思路
代码实现
var findContentChildren = function(g, s) {
g.sort((a,b)=>{
return b-a;
})
s.sort((a,b)=>{
return b-a;
})
console.log(g,s)
let res=0;
let idx = 0;
for(let i=0;i<g.length;i++){
if(idx < s.length && s[idx] >= g[i]){
res++;
idx++;
}
}
return res;
};
376. 摆动序列
解题思路
代码实现
var wiggleMaxLength = function(nums) {
if(nums.length ===1){
return 1;
}
var prediff = 0;
var curdiff = 0;
var result =1;
for(let i =0;i<nums.length-1;i++){
curdiff = nums[i + 1] -nums[i];
if((prediff>=0 && curdiff < 0) ||(prediff<=0 && curdiff > 0)){
result++;
prediff = curdiff;
}
}
return result;
};
53. 最大子序和
解题思路
代码实现
var maxSubArray = function(nums) {
var result =-Infinity;
var count =0;
for(let i=0;i<nums.length;i++){
count += nums[i];
if(count>result) result = count;
if(count < 0) count = 0;
}
return result;
};