Skip to content

Algoritma untuk Mencari Data dalam List

Reading Time: 2 minutes

Tulisan ini terinspirasi dari soal ujian programmer milik teman saya yang sedang melamar ke suatu perusahaan. Pada waktu itu saya merasa tertantang untuk bisa menyelesaikan soal-soal itu. Namun, baru sekarang saya bisa mengerjakannya.

Dalam lembar soal tersebut, ada 4 soal yang tertulis. Dalam tulisan ini, saya hanya akan membahas 1 soal saja. Saya juga akan sedikit memodifikasi soal tersebut supaya tidak persis sama, tujuannya adalah supaya tulisan saya tidak dijadikan sumber contekan.

Soal

Ada sebuah List dengan nama datas dan searchItems. List datas berisi daftar nama. List searchItems berisi daftar nama yang akan dicari di List datas. Buatlah algoritma dan program untuk bisa mencari berapa kemunculan masing-masing nama yang ada di List searchItems di List datas.

Contoh

datas = “dadang”, “udin”, “cahya”, “udin”

searchItems = “udin”, “dedi”, “cahya”

output = 2, 0, 1

Nama udin ada dua di List datas sehingga outputnya 2. Nama dedi tidak ada di List datas sehingga outputnya 0. Nama cahya ada 1 di List datas sehingga outputnya 1.

Jawaban

Algoritma

Variabel

  1. Variabel i yang bertipe int. Variabel ini digunakan untuk perulangan
  2. Variabel j yang bertipe int. Variabel ini digunakan untuk perulangan
  3. Variabel countItem yang bertipe int. Variabel ini digunakan untuk menyimpan sementara berapa kali nama ditemukan
  4. Variabel result. Variabel ini adalah sebuah List dengan tipe item adalah int. Variabel ini digunakan untuk menyimpan berapa kali masing-masing nama ditemukan.

Inisialisasi

Inisialisasi variabel i dengan nilai 0.

Input

  1. List datas yang berisi daftar nama -> “dadang”,”udin”, “cahya”, “udin”
  2. List searchItems yang berisi daftar nama yang akan dicari di List datas. Isi List searchItems -> “udin”, “ac”, “cahya”

Output

Jumlah masing-masing kemunculan nama di List searchItems di di List datas. Kalau soal ini outputnya adalah 2,0,1.

Inti Algoritma

  1. Isi variabel countItem dan j dengan nilai 0
  2. Bandingkan nama di List searchItems pada index ke i dengan nama di List datas pada index ke j, apakah sama atau tidak?. Jika sama, maka tambahkan nilai variabel countItem dengan 1
  3. Tambahkan nilai j dengan 1
  4. Ulangi langkah 2 dan 3 sampai j bernilai sama dengan index terakhir List datas
  5. Tambahkan item pada List result dengan nilai dari variabel countItem
  6. Ulangi langkah 1,2,3,4, dan 5 sampai i bernilai sama dengan index terakhir List searchItems.

Contoh program



		


Output program

Algoritma untuk Mencari Data dalam List

Bagikan artikel

Published inProblem Solving

Be First to Comment

    Tinggalkan Balasan

    WhatsApp chat