Two Sum LeetCode problem Solution

Code Snippets 4 U

The Problem Statement:

Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target.

You may assume that each input would have exactly one solution, and you may not use the same element twice.

You can return the answer in any order.

Example 1:Input: nums = [2,7,11,15], target = 9 Output: [0,1] Explanation: Because nums[0] + nums[1] == 9, we return [0, 1].

Example 2:Input: nums = [3,2,4], target = 6 Output: [1,2]

Example 3:Input: nums = [3,3], target = 6 Output: [0,1]

Constraints:

  • 2 <= nums.length <= 104
  • -109 <= nums[i] <= 109
  • -109 <= target <= 109
  • Only one valid answer exists.

The Solution

The solution is in C# language.

 public int[] TwoSum(int[] nums, int target) {
       var start = 1; // From where to start adding
        var checkedTill = 0; // Till where we have checked for sum
        int? sum = null; // predefine variable to store sum.
        
        while (start < nums.Length) {
            if (checkedTill == nums.Length - 1) {
                break;
            }
			
            sum = nums[checkedTill] + nums[start];
            if (sum == target) {
                return new int[]{checkedTill, start};
                break;
            }
			
			start += 1;
			// if we have checked till last element, then start over with next element as checkedTill
            if (start == nums.Length) {
                checkedTill += 1;
                start = checkedTill + 1;
				continue;
            }
        }
        return new int[0];
    }

Leave a Reply

Your email address will not be published. Required fields are marked *

+ twenty four = 29