Lompat ke isi

Menyortir spageti

Ensiklopedia Pengetahuan Universitas Islam Sultan Agung

Menyortir spageti merupakan sebuah algoritma untuk menyortir benda yang diperkenalkan oleh seorang matematikawan asal Kanada, Alexander Dewdney dalam kolomnya di majalah Scientific American.[1][2][3] Algoritma ini mengurutkan benda yang membutuhkan ruang untuk menumpuk O(n) yang stabil. Hal ini membutuhkan prosesor paralel.

Algoritma

Untuk sederhananya, mari kita asumsikan kita sedang mengurutkan bilangan asli. Metode, penyortirannya diilustrasikan dengan mengunakan batang spageti mentah.

1. Untuk setiap angka terdapat x di daftar, dapatkan batang dengan panjang x. (Salah satu cara praktis memilih unitnya adalah dengan memilih angka terbesar m dalam daftar dan berkoresponden untuk satu batang spageti yang sempurna. Dalam hal ini satu batang sempurna sama dengan m unit spageti. Untuk mendapat panjang batang x, pecahkan batang (spageti) tersebut menjadi dua, jadi salah satu bagian adalah panjang x dan buang bagian lainnya (yang tidak sama panjang).

2. Setelah mendapat semua batang spageti, ambil batang tersebut dan turunkan dengan perlahan-lahan ke meja, dan biarkan batang spageti tersebut di permukaan meja. Sekarang, untuk setiap batang spageti, turunkan tangan anda dari atas hingga menyentuh batang (Jelas proses ini membingungkan dan menghabiskan waktu). Pindahkan batang tersebut ke dalam daftar output yang sebelumnya kosong. Ulangi langkah tersebut sampai semuanya sudah dipindahkan

Referensi

  1. A. K. Dewdney. On the spaghetti computer and other analog gadgets for problem solving. June 1984. Vol. 250 (6). hlm. 19–26.
  2. Dietrich Stauffer. Annual Reviews of Computational Physics VI. World Scientific. May 15, 1999. hlm. 260. ISBN 981-02-3563-1.
  3. Andrew Adamatzky. From Utopian to Genuine Unconventional Computers. Luniver Press. July 1, 2006. hlm. 96. ISBN 0-9551170-9-7.

Sumber dan atribusi

Konten artikel ini diadaptasi dari Wikipedia bahasa Indonesia, revisi 29187988 (2026-05-02T15:36:19Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Mohon gunakan konten ini secara bijak serta sesuai dengan ketentuan lisensi yang berlaku.