首页
/
每日頭條
/
圖文
/
leetcode經典題目三數之和
leetcode經典題目三數之和
更新时间:2026-04-02 23:15:36

leetcode經典題目三數之和?題目來源于 LeetCode 上第 15 号問題:三數之和,下面我們就來聊聊關于leetcode經典題目三數之和?接下來我們就一起去了解一下吧!

leetcode經典題目三數之和(LeetCode第15)1

leetcode經典題目三數之和

題目來源于 LeetCode 上第 15 号問題:三數之和。

題目描述

給定一個包含 n 個整數的數組 nums,判斷 nums 中是否存在三個元素 a,b,c ,使得 a b c = 0 ?找出所有滿足條件且不重複的三元組。

題目解析

題目需要我們找出三個數且和為 0 ,那麼除了三個數全是 0 的情況之外,肯定會有負數和正數,所以一開始可以先選擇一個數,然後再去找另外兩個數,這樣隻要找到兩個數且和為第一個選擇的數的相反數就行了。也就是說需要枚舉 a 和 b ,将 c 的存入 map 即可。

需要注意的是返回的結果中,不能有有重複的結果。這樣的代碼時間複雜度是 O(n^2)。在這裡可以先将原數組進行排序,然後再遍曆排序後的數組,這樣就可以使用雙指針以線性時間複雜度來遍曆所有滿足題意的兩個數組合。

動畫描述

待補充

代碼實現

class Solution { public: vector<vector<int>> threeSum(vector<int>& nums) { vector<vector<int>> res; sort(nums.begin(), nums.end()); if (nums.empty() || nums.back() < 0 || nums.front() > 0) return {}; for (int k = 0; k < nums.size(); k) { if (nums[k] > 0) break; if (k > 0 && nums[k] == nums[k - 1]) continue; int target = 0 - nums[k]; int i = k 1, j = nums.size() - 1; while (i < j) { if (nums[i] nums[j] == target) { res.push_back({nums[k], nums[i], nums[j]}); while (i < j && nums[i] == nums[i 1]) i; while (i < j && nums[j] == nums[j - 1]) --j; i; --j; } else if (nums[i] nums[j] < target) i; else --j; } } return res; } };

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
華燈初上第二季大結局(華燈初上終于揭曉兇手身份)
華燈初上第二季大結局(華燈初上終于揭曉兇手身份)
  鋪墊了兩季,《華燈初上》迎來了第三季,這部以懸疑感著稱的台劇最終以全員和解的方式溫馨落幕。結局并不讓觀衆感到意外,殺害蘇的兇手花子自首。   相比第二季,《華燈初上》第三季在内容層面有所升華。豆瓣評分從第二季的7.2分上升到7.6分。不少觀衆被主角們“為愛癡狂”的精神所觸動。在結尾處,蘇說,人生就是由一連串的錯誤組成的,還有煙和眼淚,妥協和失望,笑和苦笑...
2026-04-02
最基礎簡單淡妝的步驟(讓你更自信有氣質)
最基礎簡單淡妝的步驟(讓你更自信有氣質)
     女人再笨也要會畫淡妝!精緻自然低調的裸妝妝容,在不失美感的同時,還能讓你擁有美麗的高雅氣質。不僅是職場女士需要畫淡妝,就連學生有時候也喜歡畫淡妝,它沒有濃妝那麼濃烈,而且還讓人看起來更加減齡和甜美。      不是每個女生都擁有高顔值的,想要每天造型變美,那麼畫淡妝是不可少的,淡妝可以有效提升女生的氣質。所以今天這篇文章,我們就來說說畫淡妝的步驟,...
2026-04-02
搞笑合集笑死人不償命開心一整天(瘋狂搞笑系列生活的笑聲就在你身邊)
搞笑合集笑死人不償命開心一整天(瘋狂搞笑系列生活的笑聲就在你身邊)
  世界之大無奇不有,今天小編繼續給大家分享生活中搞笑時刻:      兄弟高手啊      你讓中國足球情何以堪啊      你的步伐吸引了所有人的目光      沒有動物不能的運動      小蘿莉你很猛啊      是時候展現真正的技術了   今天就分享到這,你們不需要做什麼,隻負責笑就可以了,希望小編能為大家帶來更多的搞笑瞬間   ,
2026-04-02
一夜之間身敗名裂的五位演員(演了半生的智障卻獲得3次影帝)
一夜之間身敗名裂的五位演員(演了半生的智障卻獲得3次影帝)
  文|九點放映者  一個優秀的演員必須具備不俗的演技,這是職業的基本要求。如果在此基礎上再輔以天生麗質的面孔簡直就是完美無瑕。當今看來,許多演員過于重視後者,反而忽略了作為演員的基本要求,他們憑借百年不變的表情,甚至用替身都能斬獲“大獎”.   但是,絕大多數的觀衆的審美依舊是明确的,他們還是喜歡演技出衆的實力派。黃渤的長相并不出色,但這依舊不妨礙他成為影...
2026-04-02
為人處世老祖宗留下的經典語錄(老祖宗的十句人生智慧)
為人處世老祖宗留下的經典語錄(老祖宗的十句人生智慧)
  1、病多知藥性,客久見人心。   出自唐·戴叔倫《卧病》。經常生病吃藥,什麼藥治什麼病都熟悉了;做客時間久了,就知道主人是否有真心歡迎之意。此以生病吃藥為喻,說明做客、待客的人情世相。   2、大海波濤淺,小人方寸深。海枯終見底,人死不知心。   出自唐·杜荀鶴《感遇》。此以大海與人心作比較,說明人心的險惡難測。      3、迩來父子争天下,不信人間有...
2026-04-02
Copyright 2023-2026 - www.tftnews.com All Rights Reserved