您好,登錄后才能下訂單哦!
這篇文章主要介紹了php算法面試題實例分析的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇php算法面試題實例分析文章都會有所收獲,下面我們一起來看看吧。
1.冒泡排序
每一次冒出一個值
function bubbleSort($arr) { $count = count($arr); if ($count == 0) return false; for ($i = 0; $i < $count - 1; $i++) { for ($k = 0; $k < $count - 1 - $i; $k++) { if ($arr[$k] < $arr[$k + 1]) { $tmp = $arr[$k]; $arr[$k] = $arr[$k + 1]; $arr[$k + 1] = $tmp; } } } return $arr; }
2.給定 n 個非負整數表示每個寬度為 1 的柱子的高度圖,計算按此排列的柱子,下雨之后能接多少雨水。上面是由數組 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度圖,在這種情況下,可以接 6 個單位的雨水(藍色部分表示雨水)。
實現代碼
/** * @param Integer[] $height * @return Integer */ function trap($height) { $len = count($height); $sum = 0; for($i = 1; $i < $len; $i++) { $left_max = 0; $right_max = 0; for($j = 0; $j < $i; $j++) { $left_max = max($left_max, $height[$j]); } for($k = $i; $k < $len; $k++) { $right_max = max($right_max, $height[$k]); } $max = min($left_max, $right_max); if($max > $height[$i]) { $sum += $max - $height[$i]; } } return $sum; }
關于“php算法面試題實例分析”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“php算法面試題實例分析”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。