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

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
推荐阅读
萬物皆有靈與自然相處(自然與心靈對話之書萬物歸一)
萬物皆有靈與自然相處(自然與心靈對話之書萬物歸一)
  文|王淼   安妮·迪拉德是美國著名的自然主義作家,她以《聽客溪的朝聖》一書蜚聲文壇,被評家譽為“每一頁都是一個美麗的謎,仿佛随之觀看了整整一年關于造物的秘密:空中的鳥、地上的植株、宇宙中的星星,筆筆皆随意,卻處處充滿精細的美”。1975年——此時已是她寫出《聽客溪的朝聖》十幾年之後,她獨自來到美國西海岸,居住在普吉特灣的一個小島上,聆聽自然的聲音,觀察...
2026-04-23
臨期巧克力榛果(可以當發膠的仙人掌果)
臨期巧克力榛果(可以當發膠的仙人掌果)
  約旦,又一個在世界上存在感少有的國家。   但如果提到死海,很多人便不會陌生了吧,約旦西部便是死海。      約旦西部便是著名的死海。   死海因為超高的鹽堿含量,難以生存動植物。臨近死海的約旦,雖然與之靠近,約旦人仍舊靠其勤勞種植出了葡萄、桃、櫻桃等多種水果。不僅如此,約旦還有着盛産享譽世界的椰棗,有着黑色、紫色、紅色近十種品類的無花果, 像巧克力一...
2026-04-23
死侍2紅坦克扮演者(死侍2的反派紅坦克原來是他演的)
死侍2紅坦克扮演者(死侍2的反派紅坦克原來是他演的)
  就算你認真看完【死侍2】的演職員表,你還是不會知道片中的反派「紅坦克」到底是誰演出的。因為在演職員表中,「紅坦克」這個角色的演員欄寫的是「他自己」,當然了,這隻是劇組一貫的搞笑做法,不過,應該有不少粉絲想知道這個角色的幕後演員到底是何方神聖吧?      答案肯定會讓你大出意外,原來正是本片的制片兼第一男主角萊恩雷諾斯,再加上導演大衛雷奇的一點小協助,兩...
2026-04-23
國足vs阿曼全場(收官戰
國足vs阿曼全場(收官戰
  直播吧3月29日訊 世預賽亞洲區12強賽末輪,國足客場挑戰阿曼。   國足首發:1-顔駿淩、2-鄭铮、3-高準翼、5-張琳芃、19-劉洋、20-朱辰傑、13-徐新、15-吳曦、16-廖力生、17-戴偉浚、9-張玉甯   替補:12-劉殿座、23-王大雷、4-王燊超、6-蔣光太、7-童磊、8-蒿俊闵、10-張稀哲、11-譚龍、14-高天意、18-吉翔、22...
2026-04-23
翁美玲射雕英雄傳黑衣服(經典射雕翁美玲女裝初出場)
翁美玲射雕英雄傳黑衣服(經典射雕翁美玲女裝初出場)
  作者:張力興      港台明星中,我最喜歡翁美玲,因為她塑造了《射雕英雄傳裡》裡的女主角黃蓉。哪個刁鑽古怪、冰雪聰明的黃蓉,仿佛天生就是為翁美玲量身定制的,讓人感覺黃蓉就是翁美玲,翁美玲就是黃蓉。   這也難怪金庸老先生一眼就看中了翁美玲,拍闆讓翁美玲出演黃蓉。      翁美玲也不負金老先生的厚愛,出演的黃蓉一角獨步影視界,成為經典中的經典。想當年,...
2026-04-23
Copyright 2023-2026 - www.tftnews.com All Rights Reserved