Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion functions/two_sum.py
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
def twoSum(n, t):
pass
for i in range(len(n)):
for j in range(i + 1, len(n)):
Comment on lines +2 to +3
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice work! I'm concerned about the time complexity of this function? Do think there is a way to lower it?

if n[j] == t - n[i]:
return [i, j]
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice return statement

35 changes: 35 additions & 0 deletions tests/two_sum_test.py
Original file line number Diff line number Diff line change
@@ -1,2 +1,37 @@
import pytest
from functions.two_sum import twoSum

def test_returns_0_1_for_2_7_11_15_with_target_9():
# Arrange
n = [2, 7, 11, 15]
t = 9

# Act
answer = twoSum(n, t)

# Assert
assert answer == [0, 1]


def test_returns_1_2_for_3_2_4_with_target_6():
# Arrange
n = [3, 2, 4]
t = 6

# Act
answer = twoSum(n, t)

# Assert
assert answer == [1, 2]


def test_returns_0_1_for_3_3_with_target_6():
# Arrange
n = [3, 3]
t = 6

# Act
answer = twoSum(n, t)

# Assert
assert answer == [0, 1]