Skip to main content

TWO SUM || Placement Series || LeetCode ||

1Two Sum

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]
Output: 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.



Approach : 
1. we will be doing using  Brute force approach in which we have to start from beginning of the array and for each  element of  array we have to travers to check  whether  the sum  of the first element and the second (traverse you can say  jth value ) is equal to target or not, if not then traverse  next   else return the ith and jth value.

Problem  of the this approach is time complexity  o(n2).


so  how we will optimize this ? 
 we can use HashMap and  use its containsKey method ,

Approach : 

 class Solution {
    public int[] twoSum(int[] nums, int target) {
        
       
        //create a map to store value to index 
        // take a for loop and check the map contains that  target- nums[i] then return the //           //indexe //for both
        //
         Map<Integer ,Integer> map =new HashMap<>();
        for(int i=0;i<nums.length;i++){
            if(map.containsKey(target-nums[i])){
                return new int[] {i,map.get(target-nums[i])};
            }
            else{
                map.put(nums[i],i);
            }
        }
        
        return new int[0];
        
      
        }
}


Timecomplexity : o(n);


Comments

Popular posts from this blog

System Design and Object-Oriented Problems for Interviews

Hello guys, If you have given any coding interview then you know that System design or Software design problems are an important part of programming job interviews, and if you want to do well, you must prepare this topic.  When I was searching ,   I didn't find any online course which is completely focused on solving system design problems from top companies like Amazon, Google, Microsoft, Apple, SalesForce, Flipcart, etc.  Anyway, When you combine this course with this list of questions you will have the best material to prepare for your System design interview. You can also first try all these questions by yourself before joining the course or looking it my solution for some of the questions. Top System Design and OOP Design Interview Questions Without any further ado, here is the list of some of the most popular System design or Object-oriented analysis and design questions to crack any programming job interview. 1. How Do You Design the Vending Machine in Java? SOLUTION You nee

SpringBoot Application with Oracle Database connection |Hibernate|JSP

Start a SringBoot Stater project from Eighter Eclipse or STS. Spring Starter Project fill your Artifact and Group accordingly and click “ Next ”. then select Spring Web and Spring Data JPA. POM.xml DemoApplication.java Project Structure Controller class Entity class application.properties Then run it . Note: use spring.datasource.driver-class-name= oracle.jdbc.OracleDriver insist of  spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver Do not use any extra dependency of  ojdbc .jar when you are using it from local references.