游戏实况(公司新人提问问题)

注:个人算法比较菜由于是第┅遍刷题,代码质量可能都不好这里暂时做个刷题记录:)。

给定一个非负整数数组你最初位于数组的第一个位置。

数组中的每个元素代表你在该位置可以跳跃的最大长度

判断你是否能够到达最后一个位置。

解释: 无论怎样你总会到达索引为 3 的位置。但该位置的最大跳跃长度是 0 所以你永远不可能到达最后一个位置。

1、倒数第i个可以直达
2、倒数第i个不可以直达

if(nums[len-2]>=1){//若倒数第一个可以到达最后位置则问题轉化成长度为len-1的数组是否可以达到最后位置 }else{//判断倒数第二个能否直达

经测试性能不过关,数组长度为10000个会报内存溢出错误

2、采用自顶向丅的方式求解。

return index===0; //如果第一个元素能到达目标位置则最后位置是可达的

 之前看过挖金矿问题的动态规划求解是自底向上的方式,本题没试過是否可行后续再看看:)

我要回帖

更多关于 公司新人提问问题 的文章

 

随机推荐