Three Sum — C# Coding Problem
Difficulty: medium | Category: array
Problem Description
Given an integer array `nums`, return all the triplets `[nums[i], nums[j], nums[k]]` such that `i != j`, `i != k`, `j != k`, and `nums[i] + nums[j] + nums[k] == 0`. The solution set must not contain duplicate triplets. Hint: Sort the array, then use a fixed pointer + two-pointer technique.
Examples
Example 1
Input: nums = [-1, 0, 1, 2, -1, -4]
Output: [[-1, -1, 2], [-1, 0, 1]]
Example 2
Input: nums = [0, 1, 1]
Output: []
Example 3
Input: nums = [0, 0, 0]
Output: [[0, 0, 0]]