Wawancara 150 TeratasMudah

3Jumlah

Panduan terperinci dan implementasi Python untuk masalah '3Sum'.

Pernyataan Masalah

Mudah

Diberikan array bilangan bulat nums, kembalikan semua kembar tiga [nums[i], nums[j], nums[k]] sehingga i != j, i != k, dan j != k, dan nums[i] + nums[j] + nums[k] == 0.

Perhatikan bahwa kumpulan solusi tidak boleh mengandung duplikat kembar tiga.

Tulis fungsi threeSum(nums: List[int]) -> List[List[int]].

Kendala
  • 3 <= len(nums) <= 3000
  • -10^5 <= nums[i] <= 10^5

Contoh

Example 1
Input
nums = [-1, 0, 1, 2, -1, -4]
Output
[[-1, -1, 2], [-1, 0, 1]]
Explanation

nums[0] + nums[1] + nums[2] = -1 + 0 + 1 = 0. nums[1] + nums[2] + nums[4] = 0 + 1 + (-1) = 0. nums[0] + nums[3] + nums[4] = -1 + 2 + (-1) = 0. The distinct triplets are [-1,-1,2] and [-1,0,1].

Example 2
Input
nums = [0, 1, 1]
Output
[]
Explanation

No triplet sums to 0.

Example 3
Input
nums = [0, 0, 0]
Output
[[0, 0, 0]]
Explanation

The only possible triplet sums to 0.

Need a Hint?
Pertimbangkan untuk menggunakan struktur data khusus Dua Pointer seperti kumpulan atau tumpukan.
Edge Cases to Watch
  • Struktur masukan kosong
  • Masukan elemen tunggal
  • Batasan angka yang besar

Siap Memecahkannya?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Buka di Editor
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Sumber Daya Python yang Direkomendasikan

Perluas pengetahuan Anda dengan tutorial interaktif terkait, lembar contekan, dan perbandingan kode.