首页 > 代码库 > Jump Game
Jump Game
Given an array of non-negative integers, you are initially positioned at the first index of the array. Each element in the array represents your maximum jump length at that position. Determine if you are able to reach the last index. Notice This problem have two method which is Greedy and Dynamic Programming. The time complexity of Greedy method is O(n). The time complexity of Dynamic Programming method is O(n^2). We manually set the small data set to allow you pass the test in both ways.
This is just to let you learn how to use this problem in dynamic programming ways.
If you finish it in dynamic programming ways, you can try greedy method to make it accept again. Have you met this question in a real interview? Yes Example A = [2,3,1,1,4], return true. A = [3,2,1,0,4], return false. Tags
先想好状态, 在从头想想初始化和遍历到当前是与前面的状态方程怎么得到, 或者从最后一个想想也行
public boolean canJump(int[] A) { // wirte your code here //state boolean[] can = new boolean[A.length]; //initialize can[0] = true; //function for(int i = 1; i < A.length; i++) { for (int j = 0; j < i; j++) { if (can[j] && j + A[j] >= i) { can[i] = true; break; } } } return can[A.length - 1]; }
Jump Game
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。