-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path55.JumpGame.js
More file actions
36 lines (36 loc) · 1.14 KB
/
55.JumpGame.js
File metadata and controls
36 lines (36 loc) · 1.14 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/**
* @param {number[]} nums
* @return {boolean}
*/
/**
* 暴力
* 执行用时 :76 ms, 在所有 JavaScript 提交中击败了45.28%的用户
* 内存消耗 :35.6 MB, 在所有 JavaScript 提交中击败了100.00%的用户
*/
var canJump = function(nums) {
var maxIndex = nums[0];
for(var i=0;i<nums.length;i++){
if(i>maxIndex) return false;
if(i+nums[i]>maxIndex) maxIndex=i+nums[i];
/**执行用时 :64 ms, 在所有 JavaScript 提交中击败了90.05%的用户
* 内存消耗 :35.8 MB, 在所有 JavaScript 提交中击败了87.50%的用户 */
// maxIndex = Math.max(maxIndex,i+nums[i]);
}
return true;
};
// dfs 超时
// var canJump = function(nums) {
// var mark=[],st=[0],cur=0;
// while(st.length>0){
// cur = st.pop();
// if(cur+nums[cur]>=nums.length-1) return true;
// for(var i=nums[cur];i>1;i--){
// if(cur-i>0 && mark.indexOf(cur-i)==-1)
// st.push(cur-i);
// if(cur+i<nums.length && mark.indexOf(cur+i)==-1)
// st.push(cur+i);
// }
// mark.push(cur);
// }
// return false;
// };