Two Sum Problem Solving: Implementasi dengan Javascript
Di tutorial ini kita bakalan latihan Competitive Programming untuk menyelesaikan masalah Two Sum. Ada dua solution logika yang saya tunjukan untuk kamu... implementasi dengan Javascript
Problem
Diberikan sebuah Array nums yang merupakan bilangan bulat integer dan Diberikan sebuah variable target yang merupakan bilangan bulat integer.
- jumlahkan dua elemen dari Array nums sehingga sama dengan nilai variable target yang diberikan
- Kemudian return kedua Index dari penjumlahan elemen tersebut
Contoh 1:
- Input: nums = [2, 7, 11, 15]
- Input: target = 18
-
- Output diharapkan: [1, 2]
- Output: karena nilai elemen dari index [1] + [2] == nilai target 18, sehingga yang dikembalikan [1, 2]
Contoh 2:
- Input: nums = [3, 2, 3, 5]
- Input: target = 6
-
- Output diharapkan: [0, 2]
- Output: karena nilai elemen dari index [0] + [2] == nilai target 6, sehingga yang dikembalikan [0, 2]
Problem Solution 1
Solution logika pertama.. kita menjumlahkan nilai elemen dari index pertama ditambah dengan nilai elemen index +1 diatasnya setiap loop, dan begitu seterusnya.
Demonstrasi:
const twoSum = (nums, target) => {
for(let i = 0; i < nums.length; i++) {
for(let j = i+1; j < nums.length; j++) {
if((nums[i] + nums[j]) == target) {
return [i,j];
}
}
}
}
console.log(twoSum([2,7,11,15], 18);
console.log(twoSum([3,2,3,5],6));
Problem Solution 2
Solution logika kedua sama dengan solution logika pertama, kita hanya membalikkan penjumlahan nilai elemennya dari index terakhir.
Demonstrasi:
const twoSum = (nums, target) => {
for(let i = 0; i < nums.length; i++) {
for(let j = nums.length; j > 0; j--) {
if((nums[i] + nums[j]) == target) {
return [i,j];
}
}
}
}
console.log(twoSum([2,7,11,15], 18);
Akhir Kata
Jika kalian punya solusi yang berbeda, silahkan tinggalkan di komentar agar kita bisa belajar memahami logika problem two sum ini bersama
Posting Komentar