給定乙個整數陣列 nums 和乙個目標值 target,請你在該陣列中找出和為目標值的那 兩個 整數,並返回他們的陣列下標。你可以假設每種輸入只會對應乙個答案。但是,陣列中同乙個元素不能使用兩遍。
直觀的寫法, 迴圈巢狀
var twosum = function(nums, target)
}} return null;
};
這裡最大的效能瓶頸是內層迴圈, 如果我們想快速的在nums[j]裡面找到想要的元素, 不一定要求和, 也可以等價比較.
例如var twosum = function(nums, target) {
for (var i=0; i但內層迴圈依然沒有去掉, 效能沒有提高
用快速定位代替迴圈遍歷
想到使用hashmap
於是再改造
var twosum = function(nums, target) {
var map = new map();
for (var i=0; i用map中的has方法, 取代了傳統的迴圈比較, 效率得到了提公升
企業前端面試題 企業面試真題23
給你乙個陣列 candies 和乙個整數 extracandies 其中 candies i 代表第 i 個孩子擁有的糖果數目。對每乙個孩子,檢查是否存在一種方案,將額外的 extracandies 個糖果分配給孩子們之後,此孩子有 最多 的糖果。注意,允許有多個孩子同時擁有 最多 的糖果數目。va...
前端面試題 企業面試真題 17
輸入乙個或多個車牌號碼,多個以逗號分割開,再輸入想查詢的日期 數字,週幾 輸出該日期限行的車牌號.車牌號碼有以下要求,如 ad123,12101,車牌號不能全是字母。現在對尾號進行限制 尾號為1,9則周一限行,尾號為2,8則周二限行,尾號為3,7則週三限行 尾號為4,6則周四限行,尾號為5,0的周五...
python企業真題實戰 360 面試題
360 面試題 請拿出 b 表中的 accd a 表中和 b 表中的一樣的資料 a abbbccc 用正則匹配為 abccc,不管有多少 b,就出現一次?xpath 使用的什麼庫?py2 和 py3 的區別?redis 裡面 list 內容的長度?多執行緒互動,訪問資料,如果訪問到了就不訪問了,怎麼...