分享一個面試題:
宣告一個陣列,代表股票的各個期值,求在這個階段最大的收益值為多少?
簡言之:其實就是求陣列中兩個值的差值中,最大的值,
第一反應的思路就是,進行雙層回圈進行差值計算,再從差值計算獲得的陣列中選出最大的值,面試完想了這個方法一下有些麻煩,還不如直接就在回圈中比較出來,選出最大值,直接輸出,這屬實有些延遲,面試的表現不太好,
<script> let arr =[1, 22, 37, 41, 15]; let count = 0; let item = 0; for(let i = 0; i< arr.length; i++) { for(let j =i+1;j<arr.length;j++){ if(arr[i]> arr[j]){ item = arr[i]-arr[j]; if(item > count){ count = item; } }else{ item = arr[j] - arr[i]; if(item> count) { count = item; } } } } console.log("最大利益值為:",count) </script>
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/546876.html
標籤:其他
