日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

leetcode算法题01

發(fā)布時間:2025/6/15 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 leetcode算法题01 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

最近求職需要重新刷算法題,從今天開始每天至少做一個leatcode的題
如果有更好的算法或者換了語言也會更新

  • 題目:

給定一個整數(shù)數(shù)組和一個目標值,找出數(shù)組中和為目標值的兩個數(shù)。

你可以假設每個輸入只對應一種答案,且同樣的元素不能被重復利用。

示例:

給定 nums = [2, 7, 11, 15], target = 9

因為 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]

  • 解法 :

官方給了三種解法:

  • 是暴力循環(huán),想的簡單,易于理解,但是如果數(shù)組里元素很多的話就很卡,復雜度分析:
    時間復雜度:O(n^2) ), 對于每個元素,我們試圖通過遍歷數(shù)組的其余部分來尋找它所對應的目標元素,這將耗費 O(n) 的時間。因此時間復雜度為 O(n^2)。
    空間復雜度:O(1)。

  • 是用哈希表循環(huán)兩遍,第一遍是錄入哈希表,第二遍再循環(huán)找一遍,
    復雜度分析:

    時間復雜度:O(n), 我們把包含有 nn 個元素的列表遍歷兩次。由于哈希表將查找時間縮短到 O(1),所以時間復雜度為 O(n)。

    空間復雜度:O(n), 所需的額外空間取決于哈希表中存儲的元素數(shù)量,該表中存儲了 n個元素。

  • 是用哈希表循環(huán)一遍,在第一遍時一邊錄入一邊排查,之前面試也碰到過這道題,當時面試官給的解法就是這種,相對理想
    復雜度分析
    時間復雜度:O(n), 我們只遍歷了包含有 nn 個元素的列表一次。在表中進行的每次查找只花費 O(1) 的時間。
    空間復雜度:O(n), 所需的額外空間取決于哈希表中存儲的元素數(shù)量,該表最多需要存儲 n 個元素。

  • 代碼

var twoSum = function(nums, target) {var result=[];var test=new hashTable();// var i=0;nums.forEach(function(item,index){// console.log("success" +index);if(test.containsKey(target-item)&&item==(target-item)){result.push(test.getValue(target-item),index);test.remove(target-item);// console.log("same");} else {test.add(item,index);if(test.containsKey(target-item)&&index!==test.getValue(target-item)){// result.push([test[item],test[target-item]]);result.push(test.getValue(target-item),test.getValue(item));test.remove(item);test.remove(target-item);// console.log("delete");}}});return result; };
  • 心得

題不難,主要是練習通過哈希表的排序是怎么用js實現(xiàn)的,哈希表的搜索簡單快捷,實現(xiàn)起來也不難。之前沒用js做過。
在調(diào)試的過程中出現(xiàn)了2回問題

  • 剛開始我只是想把數(shù)組的值作為key,序號作為value,沒有考慮當兩個值都是一樣的時候哈希表會覆蓋,報了一回錯,加了個if判斷了一下,就解決了

  • 數(shù)據(jù)范圍考慮不全。沒有考慮給的和等于他本身時的情況,報了一回錯,加了個if判斷了一下,就解決了。

  • 更新

  • 未來想用python實現(xiàn)一下,算法方面應該沒什么可優(yōu)化的了。

轉(zhuǎn)載于:https://www.cnblogs.com/dadaochangcun/p/9806574.html

總結(jié)

以上是生活随笔為你收集整理的leetcode算法题01的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。