leetcode:跳跃游戏II(java贪心算法)

package LeetCode;

public class Jump {
    public int jump(int[] nums) {
        //跳跃次数
    int cont=0;
    //跳出条件
    int n=nums.length;
    //为了保存每次可以到达的地方
    int i=0;
    int max=0;
    int s=0;
       while (max<n-1){
            cont++;
            int a=max;
             i=s;
            for (;i<=a;i++){
                max=Math.max(max,i+nums[i]);
                if(max!=a)s=i;
            }
       }
       return cont++;
    }

    public static void main(String[] args) {
        Jump a=new Jump();
        int[] b={2,3,1,1,4};
        System.out.println(a.jump(b));
    }
}

猜你喜欢

转载自blog.csdn.net/microopithecus/article/details/84949432