1. 概述
给出一个非负整数数组,你最初定位在数组的第一个位置。 数组中的每个元素代表你在那个位置可以跳跃的最大长度。
判断你是否能到达数组的最后一个位置。
2. 解题
<?phpclass Solution {/*** @param array $arr* @return mixed*/public function canJump(array $arr) {$can = [];if ($arr[0] == 0) {return false;} else {$can[0] = true;}for ($i = 1; $i < count($arr); $i++) {for ($j = 0; $j < $i; $j++) {if (!$can[$j]) continue;$c = ($j + $arr[$j] >= $i) ? true : false;$can[$i] = $c;}}return $can[count($arr) - 1];}}// $arr = [2,3,1,1,4];$arr = [3,2,1,0,4];$cls = new Solution();$r = $cls->canJump($arr);var_dump($r);
