Вопрос

Учитывая целочисленный массив nums, вернуть все триплеты [nums[i], nums[j], nums[k]], такие что i != j, i != k, и j != k, и nums[i] + nums[j] + nums[k] == 0.

Обратите внимание, что в наборе решений не должно быть повторяющихся триплетов.

Пример 1:

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

Пример 2:

Input: nums = []
Output: []

Пример 3:

Input: nums = [0]
Output: []

Ограничения:

  • 0 <= nums.length <= 3000
  • -105 <= nums[i] <= 105

Решение

Временная сложность O(n³)

Сложность пространства O(d), где d — количество возможных наборов

Временная сложность O(n²)

Сложность пространства O(n + d), где d — количество возможных наборов

Вы видите эту зеленую кнопку подписки? 🐌