Algorithma Penempatan n Obyek dengan Fungsi Rekursif Javascript


Seorang bertanya kepada penulis dengan pertanyaan berikut:

Misalnya An menyatakan berapa banyak cara untuk menempatkan n obyek, yang berbeda dalam 5 kotak. Bagaimana cara menulis dan menyelesaikan relasi rekursif untuk An?

Pertanyaan ini sama dengan ada sejumlah n Anak yang disediakan n tempat duduk, berapa banyak macam urutan berjejer yang dapat dilakukan n anak tersebut?

Tentu sebagai programmer penulis penasaran, apalagi dipertanyaan tersebut terdapat kata rekursif yang penulis langsung berpikir pastinya yang dimaksud adalah fungsi perulangan rekursif dalam pemrograman.

Meskipun penulis belum yakin rekursif yag dimaksud benar atau salah, tetapi sesuai kode di bawah ini, penulis mencoba membuat algorithma dengan menggunakan Javascript.

Berikut ini kode penyelesaian pertanyaan di atas:

<html> 
<head> 
<title>Try Rekursif</title> 
</head> 
<body> 
<div style="display:flex;flex-direction: row;flex-wrap:wrap;"> 
<script> 
 
var An = ["A","B","C","D","E"]; 
var susunan=[]; 
 
function getIndex(depth,index) 
{ 
 var a=0; 
 for(var n=0;n<depth;n++){ 
  if(susunan[n]==index){ 
   a=1; 
   break; 
  } 
 } 
 if(a>0){ 
  return; 
 }else{ 
  susunan[depth]=index; 
  for(var i=0;i<An.length;i++)getIndex(depth+1,i); 
 } 

 if(depth==An.length-1){ 
  document.write("<div style='margin:5px;'>"); 
  for(var no=0;no<An.length;no++)document.write(An[susunan[no]]); 
  document.write("</div>"); 
 } 
} 
for(var i=0;i<An.length;i++)getIndex(0,i); 
 
</script> 
</div> 
</body> 
</html> 

Komentar



Postingan populer dari blog ini

Apps Script untuk Cetak Sertifikat

Jasa Penjadwalan Semester, UTS dan UAS Perguruan Tinggi menggunakan Google Sheet

Checking Data yang Belum Dimasukkan dalam Daftar Menggunakan Query Google Sheet

Menambahkan Random Key sebagai ID Pembeda di Google Sheet dengan Apps Script

Generate Karakter Acak dan Menempatkannya di Sel Google Sheets dengan Apps Script

Menyembunyikan Failed Load Images di Blogger

Menyikapi Ucapan AI Pejabat

Peringatan: Aksi Penipuan Skimming Melalui Aplikasi Android M-Pajak

Kebodohan Karyawan Menyalahkan Sistem

Menghapus Baris di Google Sheets yang Memiliki Sel Kosong dengan Apps Script