leetCode Jump Game

本題使用遞歸方法求解。javascript

1.判斷數組是否爲全正,若是爲全正則必定能跳到最後一步,則返回true。java

2.若是不爲全正,則從數組最後開始,找到能到最後一步的前一步。再之前一部以前的的數組做爲初始數組進行遞歸。數組

3.若是能從第一步走到最後一部則返回true。code

4.檢查完數仍是不能到最後一部,返回false。 遞歸

var canJump = function(nums) {
        var j=0;
        for(j=0;j<nums.length;j++){
            if(nums[j]<=0)
                break;
        }
        if(j==nums.length)
            return true;
        for(var i=nums.length-1;i>=0;i--){
            if(nums.length <= 1){
                return true;
            }
            else if(i>0 && i-1+nums[i-1] >= nums.length-1){
                if(i-1 <= 0)
                    return true
                else
                    return canJump(nums.slice(0,i));
            }
        }
        return false
};

使用js求解,用遞歸的思想。ip

原創,轉載請註明出處io

相關文章
相關標籤/搜索