Melapum

[Day 3] Doing LeetCode (Two Sum)

It's the weekend,
gonna try this problem from leet, not much else today.

The problem:


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:


My Solution:

Used the naive brute force method:

class Solution(object):
    def twoSum(self, nums, target):
        for i in range (0, len(nums)):
            for j in range (i+1, len(nums)):
                if (nums[i]+nums[j]==target):
                    return (i,j)

It took a bit to remember syntax of py, but at least I solved it, even in the worst complexity
anyway I have looked up the solutions part,
saw that in order to avoid O(n^2) we can use Hash Table, which I'm not familiar with.
I need to take that data structure and algorithm course already.


That's it for today
Hopefully tomorrow we will open the new week stronger