Two sum problem

This commit is contained in:
silviodeveloper1029 2024-11-25 15:20:35 +00:00
parent 2e26a9d667
commit 753f5e4360
2 changed files with 43 additions and 0 deletions

View file

@ -0,0 +1,11 @@
load("@rules_java//java:defs.bzl", "java_binary")
package(default_visibility = ["//visibility:public"])
java_binary(
name = "two_sum",
srcs = glob(["*.java"]),
main_class = "silviobraendle.two_sum.Main",
deps = [
],
)

View file

@ -0,0 +1,32 @@
package silviobraendle.two_sum;
import java.util.HashMap;
import java.util.Map;
public class Main {
public static void main(String[] args) {
int[] nums = {
2, 7, 11, 15
};
int target = 9;
int[] indices = twoSum(nums, target);
System.out.println(indices[0]);
System.out.println(indices[1]);
}
public static int[] twoSum(int nums[], int target) {
Map<Integer, Integer> foundIndices = new HashMap<>();
for (int i = 0; i < nums.length; i++) {
int value = nums[i];
int complement = target-value;
Integer indexOfComplement = foundIndices.get(complement);
if (indexOfComplement != null) {
return new int[] {indexOfComplement, i};
}
foundIndices.put(value, i);
}
throw new Error();
}
}