Pengenalan Algoritma

Last Updated on Friday, 5 March 2010 01:30 Written by edy winarno Friday, 5 March 2010 01:30 Algoritma Ditinjau dari asal usul katanya kata Algoritma sendiri mempunyai sejarah yang aneh. Orang hanya menemukan kata Algorism, yang berarti proses pengerjaan arithmatika (penghitungan) dengan menggunakan angka Arab : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Para ahli bahasa berusaha menemukan asal kata ini namun hasilnya kurang memuaskan. Akhirnya para ahli sejarah matematika menemukan asal kata tersebut yang berasal dari nama penulis buku arab yang terkenal yaitu Abu Ja’far Muhammad Ibnu Musa Al-Khuwarizmi. Al-Khuwarizmi dibaca orang barat menjadi Algorism. Al-Khuwarizmi menulis buku yang berjudul Kitab Al Jabar WalMuqabala yang artinya “Buku pemugaran dan pengurangan” (The book of restoration and reduction). Dari judul buku itu kita juga memperoleh akar kata “Aljabar” (Algebra). Pada abad pertengahan perhitungan dengan abacus menggunakan algorism, sehingga algorism lebih dikenal sebagai algiros (painfull) + arithmos (number). Perubahan kata dari Algorism menjadi Algorithm muncul karena kata Algorism sering dikelirukan dengan Arithmetic, sehingga akhiran –sm berubah menjadi –thm. Karena perhitungan dengan angka Arab sudah menjadi hal yang biasa, maka lambat laun kata Algorithm berangsur-angsur dipakai sebagai metode perhitungan (komputasi) secara umum, sehingga kehilangan makna kata aslinya. Dalam Bahasa Indonesia, kata Algorithm diserap menjadi Algoritma. Algoritma merupakan basic semua pemrograman komputer. Arti modern algoritma : sebagai resep, proses, metode, teknik, prosedure, routine. Menurut Donald E Knuth algoritma harus memenuhi persyaratan; 1). Finiteness Algoritma harus berakhir (terminate) setelah melakukan sejumlah langkah proses 2). Definiteness Setiap langkah algoritma harus didefinisikan dengan tepat dan tidak menimbulkan makna ganda (ambiguous). Karena itu maka sebetulnya cara paling tepat untuk menuliskan algoritma adalah dengan menggunkan formal language (bahasa pemrograman komputer). 3). Input Setiap algoritma memerlukan data sebagai masukan untuk diolah. Algoritma yang tidak memerlukan masukan apa-apa sebetulnya tidak begitu bermanfaat karena jumlah kasus yang dapat diselesaikan juga terbatas. 4). Output Setiap algoritma memberikan satu atau beberapa hasil keluaran. 5). Effectiveness Langkah-langkah algoritma dikerjakan dalam waktu yang wajar. Sebagai basis pemrograman komputer, algoritma mendeskripsikankan urutan langkah-langkah

yang diperlukan untuk pemecahan masalah (penyelesaian persoalan). sehingga kinerjanya sehubungan dengan waktu yang effisien/bisa diterima akal 4)    memberikan hasil (output). Proses Pemrograman Proses pemecahan masalah dengan algoritma tertentu hingga menjadi program dapat dibagi dalam sembilan tahap. 6)    Memeriksa hasil compiling. 5)    Mengubah source code menjadi executable code melalui proses compiling. bagaimana rincian prosesnya. 3)    Merancang algoritma (berupa flowchart/pseudocode) Apa maksudnya. yang memiliki ciri-ciri sebagai berikut. 2)    Membuat model Yang dimaksud model adalah bentuk matematis yang dapat digunakan untuk memecahkan masalah. 9)    Mendokumentasi program bila sudah benar. atau salah menentukan model. kesalahan mungkin terjadi saat konversi rancangan algoritma menjadi program. 1)    selalu memiliki terminasi/langkah akhir 2)    setiap langkah dinyatakan secara jelas dan tegas 3)    setiap langkah sederhana. 1)    Mendefinisikan masalah Masalah yang ingin dipecahkan harus jelas lingkupnya. 7)    Menjalankan program (run) untuk diuji kebenarannya dengan menggunakan berbagai data 8)    Memperbaiki kesalahan (debugging dan testing) Apabila hasilnya salah. apa keluarannya. dan lain-lainnya 4)    Menulis program Ubah algoritma menjadi program (source code) dalam bahasa pemrograman tertentu. misalnya apakah harus dilakukan pengurutan terhadap data. apakah menggunakan perhitungan kombinatorik. jika ada kesalahan maka kembali ke tahap empat. Ulangi langkah yang sesuai. Metode Searching dalam Algoritma dan Pemrograman . atau salah rancang algoritma. mungkin dengan satu atau tanpa input. atau salah mendefinisikan masalah. dan sebagainya.

sehingga tiap medan (field) menggambarkan dirinya sendiri sehubungan dengan nama medan dan nilainya. dan bila ingin mendapatkan semua rekaman yang diinginkan yang mempunyai medan/nilainya tertentu. terdiri dari cacah medan yang sama. Satu atau lebih rekaman disimpan dalam tiap blok secara fisis. -   Optimum bila melibatkan proses dari semua rekaman (misal aplikasi billing atau gaji). 1. 9 March 2010 09:32 Written by edy winarno Monday. -   Nilai kunci untuk setiap rekaman yang berbeda selalu berbeda.Last Updated on Tuesday.1 Pile Sifat-sifat organisasi berkas dalam bentuk pile adalah: –   Data terkumpul/tersusun sesuai dengan kedatangannya. -   Kunci sifatnya tunggal (unique) è identifikasi rekaman. -   Dapat disimpan secara sequential sederhana dalam blok-blok. Organisasi berkas semacam ini hanya dilakukan pada saat pengumpulan dan penyimpanan data sebelum diproses atau data sulit diorganisasikan. Sehingga bila ingin mendapatkan suatu rekaman yang suatu medannya berisi suatu nilai tertentu harus mengamati setiap rekaman dalam pile sampai rekaman yang dimaksud ditemukan. –   Panjang medan dan rekaman berbeda-beda. dan berkas pelimpahan. -   Cocok untuk media simpan pita magnetis (tape). -   Digunakan untuk aplikasi batch. pelacakan yang efisien dimungkinkan.2 Sequential –   Paling banyak dijumpai –   Format data untuk rekaman tetap -   Semua rekaman panjangnya sama. maka akses rekaman sukar dan makan waktu lama. –   Rekaman mungkin mempunyai medan (field) yang berbeda atau mungkin serupa namun berbeda ordernya. unjuk kerjanya jelek. -   Bila seluruh berkas atau sebagian besar berkas dapat dibawa ke pengingat utama pada waktu tertentu. -   Organisasi fisis berkas sequential dapat dilakukan secara linked list (daftar berantai). -   Rekaman disimpan dalam urutan kunci alfabetis atau numeris. -   Nama medan dan panjang setiap medan è atribut struktur berkas -   Atribut khusus (biasanya medan pertama dalam tiap rekaman) è kunci. panjang medan yang sama dengan order tertentu. seluruh berka harus dilacak. 1. 8 March 2010 01:39 Data searching (pencarian data) meliputi : FETCH :     –       pencarian lokasi rekaman -   pembacaan rekaman NEXT : –   memperoleh rekaman berikutnya -   membaca seluruh rekaman dalam berkas Algoritma searching sangat erat hubungannya dengan : sistem berkas (organisasi berkas). -   Index memberikan kemampuan untuk mencari rekaman yang diinginkan secara cepat. Karena organisasi berkas pile tidak berstruktur. -   Berkas pelimpahan untuk limpahan rekaman . -   Akses secara sequential untuk menemukan medan yang sesuai dengan kunci. -   Tiap rekaman terdiri dari satu data penuh –   Maksud pile untuk mengumpulkan massa data dan menyelamatkannya. Macam organisasi berkas: -        Pile -        Sequential -        Indexed sequential -        Indexed -        Hashed (= direct) 1 Macam Organisasi Berkas 1. juga disk -   Untuk aplikasi interaktif yang melibatkan query atau update suatu rekaman. Tiap blok pada disk berisi pointer (penunjuk) ke blok berikutnya.3 Indexed Sequential –   Pendekatan paling populer untuk mengatasi kerugian berkas sequential -   Rekaman-rekaman diorganisasikan dalam urutan berdasar pada suatu medan kunci -   Dua hal ditambahkan yakni : suatu berkas index untuk mendukung akses secara random.

dan partial index (index parsial) untuk entri rekaman dimana medan berada. yakni : exhaustive index (index lengkap) untuk pintu masuk (entri) setiap rekaman dalam berkas utama. -   Banyak digunakan pada sistem dimana aliran waktu sangat kritis dan data yang jarang diproses secara lengkap (misal pada sistem pemesanan tiket pesawat dan sistem inventarisasi). -   Sangat mempersingkat waktu akses rekaman yang diinginkan.(rekaman yang disisipkan). . -   Untuk meningkatkan efisiensi akses dilakukan dengan index ganda.4 Indexed -   Tak ada konsep sequential dan kunci tunggal. -   Cocok pada media disk. -   Rekaman hanya diakses lewat indexnya. -   Digunakan dua tipe index. -   Berkas index terdiri dari dua medan yaitu medan kunci dan pointer. -   Panjang rekaman dapat bervariasi. Bagan Searching Index Sequential ( Index Tunggal) Bagan Searching Index Sequential ( Index Ganda) 1. -   Berkas index berstruktur sequential -   Yang diakses berkas index untuk mencari medan yang sama (cocok) dengan kunci lalu pointernya untuk penunjuk pada akses berkas utamanya secara langsung.

Teknik 1 : Pemayaran Berkas (Scanning the file) Cara yang paling sederhana untuk pengambilan rekaman adlah memayar berkas dengan memeriksa kunci setiap rekaman. Keduanya dipakai sebagai kunci. tidak perlu setiap rekaman dibaca pada waktu memayar berkas.rekaman berisi lebih dari satu kunci. Ini disebut kunci utama atau penciri (identifier). 12 March 2010 08:53 Teknik Pengalamatan Rekaman.rekaman dalam suatu berkas nalari diciri (diidentifikasi) oleh perangkat nomer yang unik atau kelompok karakter yang unik. karena kunci itu dipakai untuk menentukan di mana rekaman harus diambil dari unit berkas dan untukk melacak rekaman itu dari berkasnya. 12 March 2010 09:00 Written by edy winarno Friday.Teknik Pengalamatan dalam Algoritma dan Pemrograman Last Updated on Friday. (concatenated key) Dalam beberapa berkas. Misalnya barang yang sudah dibeli mempunyai nomer penyalur dan nomer pemakai yang berbeda. Persoalan dari pengalamatan berkas adalah: diberikan kunci utama. Metode ini sangat lambat dan hanya mungkin digunakan dalam operasi pemrosesan kelompok yang memakai berkas serial. Kunci harus unik. Untuk membentuk suatu kunci yang unik kadang. Seperti halnya pembagian . seperti pita.rekaman yang diorganisasikan serial dengan kunci.kadang diperlukan gabungan dua medan atau lebih yang disebut kunci berderet. Teknik 2 : Pencarian Ruas (Block Search) Pada rekaman. di mana setiap rekaman mau tidak mau harus dibaca. Misalnya kunci rekaman yang dicari Ks. Perangkat ini disebut kunci. biasanya menempati medan yang panjangnya tetap dalam masingmasing rekaman. Berkas itu dalam urutan kunci utama yang menanjak (ascending). lalu bagaiman komputer mengambil rekaman atau kunci itu? Ada berbagai teknik pengalamatan rekaman. maka pencarian dimulai dari kunci.kunci ruas yang kecil. rekaman.

Pada pemeriksaan kalau ditemukan rekaman yang kuncinya pertama kalau kali lebih besar dari Ks. karena menghabiskan banyak waktu. sehingga sulit untuk menentukan titik tengahnya. Nf adalah jumlah rekaman daklam berkas. tanpa harus menggeser ke samping ( proses ini merupakan operasi yang janggal dan memakan waktu). . Pencarian biner bermanfaat untuk pencarian rinci-rinci dalam memori utama atau simpanan tingkat padat (misalnya hard disk ). maka rekaman.000 rekaman dalam suatu berkas. Teknik 4 . Berkas Serial Berindex Pada umumnya pemayaran atau pencarian berkas-berkas untuk mendapatkan suatu rinci terlalu banyak memakan waktu.Kadang. log Nf – 1 lebih kecil daipada  .kadang cara ini disebut pencarian loncatan (skiipsearch). Pencarian biner lebih baik dilakukan pada index-index berkas daripada langsung mencari berkasnya sendiri. Titik tengah yang dituju akan bergeser untuk menyesuaikan penambahan itu. ukuran ruas yang optimum adalah NB = . karena komputer tidak mempunyai peralatan untuk mengatur pencarian itu.0002 rekaman . Maka akan diketahui bahwa kunci yang dicari letaknya dibelahan yang mana. Pencarian Biner ( Binary Search ) Pencarian biner pertama-tama menuju ketengah-tengah area yang mengandung rekaman yang diminta. Untuk harga Nf (jumlah rekaman dalam berkas) yang besar.rentetan pada bab sebelumnya. Dalam hal ini diperlukan index yang mewakili seluruh rekaman. Rata-rata ada 100 rekaman yang diperiksa sehingga ditemukan rekaman yang diminta. Sepaerti diketahui rentetan terdiri atas rekaman-rekaman yang disatukan dengan pointer. Kemudian menuju ketengah-tengah belahan itu lagi . Kemudian pencarian diteruskan dengan menelusuri pointer-pointer. yang berarti seluruh berkas ada 10. Jenis khusus dari pencarian biner adalah rinci-rinci yang dicari tidak disusun berurutan. Pemayaran cakram atau alur drum dapat dibuat bersamaan dengan waktu rotasi dan karena itu bermanfaat. Pencarian biner tidak dapat dipakai untuk pencarian pada rentetan.rekaman dari ruas yang baru saja diloncati diperiksa (dipayar) sampai ditemukan rekaman dengan kunci Ks.Proses ini diulangi terus menerus. Berkas diperiksa rata-rata kurang lebih      (log 2 Nf -1 ) kali. Lalu membandingkan kunci rekaman yang ditengah-tengah itu dengan kunci yang dicari. Metode tersebut hanya dipakai untuk menudingsuatu rinci dalam area yang kecil setelah teknik-teknik yang lain menemukan area yang ditempatinya.000. Misalnya ada 10. Ruas pencarian terdiri atas 100 rekaman. tetapi dalam bentuk pohon biner dengan pointer-pointer. Teknik 3. Proses pencarian baru akan dilakukan pada ruas yang mengandung rekaman yang diminta. Pencarian biner umumnya tidak tepat untuk pencarian pada piranti simpanan masup langsung. Kemudian pada index inilah dilakukan pembagian ruas-ruas pencarian. Dalam praktek tidak ada pencarian ruas yang rekamannya sampai 10. Keuntungan bentuk pencarian ini adalah bahwa rekaman – rekaman baru dapat disisipkan ke dalam berkas .

tetapi dibuthkan ruangan untuk menyimpan index itu. memberikan hubungan. Pengacuan ruas. dan index kartu itu memberikan nomor katalog. Mode lokasi VIA dari CODASYL memakai teknik ini.rekaman. Index sekunder adalah index yangmengunakan kunci yang tidak unik. Index utama adalah index yang menggunakan ciri rekaman (kunci utama) sebagai masukan dan memberikan informasi tentang lokasi fisis dari rekaman sebagai keluara.rekaman yang tersimpan dalam silinder itu. Walaupun demikian index seringkali terlalu besar untuk dicari dalam keseluruhannya. Pemakai mencari nama buku yang dia perludi dalam index kartu.kadang disebut sebagai penuntun (directory) yang memberikan informasi tentang pertalianantara rekaman. di mana rekaman itulah yang memiliki harga-harga atribut tersebut. dan sebagai keluaran memberikan informasiyang membantu pengambilan rekaman dengan cepat. yang analog dengan alamat relatifdari letak buku itu pada ra Apabila berkas mempunyai kunci yang berurutan. Hal ini mirip dengan penggunaan indek kartu dalam perpustakaan. Suatu index didefinisikan sebagai suatu tabel di mana beroperasi dengan prosedur yang menerima informasi tentang harga-harga atribet tertentu sebagai masukan. harus berisi alamat lengkap tertentu (atau alamat relatip). sedangkan suatu index pada . Lagi pula.Apabila berkas mempunyai kunci yang berurutan. Untuk menghemat waktu pencarian. sebagai contoh.ruas rekaman dibandingkan dengan pengacuan pada rekaman individu sangant banyak mengurangi ukuran indek.ruas rekaman. Berkas serial berindex merupakan bentuk yang paling umum dari pengalamatan berkas. segmen. Apabila suatu index dipakai untuk pengelamatan berkas. maka komputer harus mencari index. bukan mencari berkas itu. dilakukan pencarian dengan metode pencarian ruas atau pencarian biner maupun pemayaran. Masukan pada tabel adalah kunci rekaman yang dicari. danhasil operasi pencarian tabel adalah alamat relatif atau alamat sesungguhnya dari rekaman itu pada unit berkas. Index kadang. biasanya digunakan tabel yang disebut index . Teknik 5 : Berkas Tak Berurutan Berindex (Indexed Nonsequential Files) Berkas yang tak berurutan dapat diberi index seperti halnya berkas berurutan. Cara ini dapat menghemat banyak sekali waktu.rekaman data yang bersangkutan Pada area berkas yang diwakili satu index. tapi dapat mewakili sejumlah rekaman. umumnya index tidak berisi acuan untuk setiap rekaman. dan dengan demikian diperlukan suatu index untuk sejumlah index. Pada berkas cakram biasanya mempunyai satu alur index untuk setiap silinder.segmen dari iondex tingkat lebih rendah dapat diedarkan di antara rekaman. Tetapi memerlukan index yang jauh lebih banyak. yang berisi acuan – acuan untuk rekaman.hubungan dalam struktur jaring atau stuktur pohon. karena harus berisi satu entry untuk satu rekaman. tetapi cukup satuan acuan untuk ruas.

Untuk berkas yang berkunci banyak. Analog dengan index induk pada suatu index silinder dam kemudian pada index alur. Dalam hal ini pencarian dalam berkas dapat menggunakan metode pencarian ruas ataupun pemayaran dan pencarian biner. misalnya judul buku adalah kunci utama. karena ruang index jauh lebih sedikit dan waktu pencarian lebih cepat. Setelah menemukan rak yang memuat buku tersebut . lalu pemakai mencari. Oleh karena itu harus ada suatu entri untuk setiap buku dalam kedua index it. Dengan kunci nama pengarang.buku itu disusun dalam urutan dengan nomor katalog.masing jajaran rak biasanya terdapat tanda nomor permulaan dan nomor akhir katalog dari buku.rekaman.buku dalam jajaran itu. berarti buku yang dicari berada dalam jajaran itu. Analogi index kartu perpustakaan lebih tepat untuk berkas berurutan berindex. Sedang kunci tak berurutan. Analog dengan pencarian Index dalam berkas. index untuk kunci berurutan mempunyai satu entry per ruas. Buku. maka index perpustakaan harus sering diperbarui/ diubah. Dalam hal ini APN sama semua. Analogi dengan index perpustakaan. APNK. Lalu dicocokkan batasan nomor pada tiap rak dalam jajaran itu. Index perpustakaan tidak menunjukkan lokasi fisis dari buku pada raknya. Masing. yakni judul buku dan nama pengarang. Tetapi memberikan pada nomor katalog yang dapat dianggap sebagai alamat relatif atau alamat simbul. tetapi . APNE. Pemakai membandingkan nomor katalog yang telah diperoleh dengan batasan nomor pada jajaran itu. Dengan alasan yang sama berkas tak berurutan berindex juga kadang. Misalnya APNA.berkas berurutan dapat memotong alamat yang dikandungnya.kadang memakai simbul daripada alamat sungguh.buku pada rak. dan seterusnya. Apabila lebih dari satu kunci digunakan dalan rekaman. Kunci utama ini kemudian digunakan untuk pengembilan rekaman dengan pengalamatan yang lain. kitadapat menemukan kunci utamanya.rak. Berkas berurutan berindex jauh lebih ekonomis. lalu dia mencari pada jajaran-jajaran rak (lemarilemari rak). karena urutan karakter tingkat tinggidari alamat berturut-turut biasanya sama.rekaman. Kedua kunci ini tidak dipakai untuk pengurutan buku. Alasan utama tetap digunakanya berkas tak berurutan ialah bahwa harus dialamatkan lebih dari satu kunci. Alasannya dipakai alamat simbul ialah kalau alamat fisis yang dipakai. maka kunci yang lain tidak akan terurutkan. APNI. Apabila pemakai telah menemukan nomor katalog dari buku yang diinginkannya. kunci yang paling sering dipakai biasanya yang diurutkan. Dua kunci dipakai dalam indek kartu. Apabila nomor katalog yang dipegangnya berada dalam batasan itu. karena masup cepat dimungkinkan oleh index berurutan pendek. Apabila kunci yang satu diurutkan. sedang nama pengarangbukan kunci utama. Penambahan rekaman baru dan penghapusan rekaman lama selalu menggeser lokasi rekaman. satu entry untuk setiap rekaman. lalu karena buku-buku dalan rak selalu bergeser tempatnya. Index pada suatu kunci yang bukan utama dapat menunjukkan kunci utama dari rekaman sebagai keluarannya. Suatu index dapat dipakai untuk tiap kunci.cari buku tersebut dalam rak itu. Metode dengan menggunakan alamat simbul lebih lambat daripada alamat fisis.

Alamat pada beberapa apilkasi dapat dihitung dari penciri entiti seperti lokasi jalan.pada berkas yang rekaman.Equals. Penggunaan metode. sehingga rekaman penumpang itu segera ditemukan. Teknik 7 : Alogaritma Untuk Konversi Kunci Penggunaan algoritma untuk mengbah kunci ke dalam alamat. maka pemeliharaannya memerlukan waktu banyak.metode ini dapat menghasilkan perangkat pengalamatan yang tercepat dan tidak diperlukan pencarian berkasatau operasi index. Kalau buku. biasanya pesan itu mancakup nomor acuan mesin dari rekaman penumpang.kunci tidak diubah menjadi satu himpunan alamat yang kontinu. Jawabandalam pesanan teletip diterima.buku itu tak berurutan. Mode lokasi DIRECT dari CODASYL memakai teknik ini. Apabilabuku yang disimpan dalam rak diurutkan menurut abjadnya. Kadang. karenasetiap kali ditambahkan buku baru. Alasan lain untuk penggunaan susunan rekaman tak berurutan adalah bahwa berkas itu sangaty lincah dan penyisipan penghapusan ke dalam berkas yang berurutan akan terlalu sulit dan terlalu makan waktu. Teknik ini biasanya mempunyai kerugian karena tidak memenuhi barkas dengan sempurna. hampir secepat dengan teknik alamat setara kunci  (teknik 6). Cara pemecahan persoalan pengalamatan yang paling sederhana aialah dalam transaksi input.Pola ini termasuk pengalamatan langsung.Address) Berbagai metode pengubahan kunci langsung ke dalam suatu alamat berkas dipakai. sejumlah buku harus digeser. Ada celah. Tidak semua aplikasi yang tidak menerapkannya. maka buku barudapat diletakkan pada posisi terakhir dengan nomor urut katalog yang terakhir. alamat berkas dari rekaman dapat dicetak pada buku tabungan langganan bank. Apabila komputer pemesan perusahaan penerbangan mengirimkan pesan teletip pada perusahaanpenerbangan yang lain.rekamannya sering berubah posisinya.kadang nomor acuan mesin dapat digunakan dalam transaksi input tanpa membutuhkan nomor konsumen ataupun nomor barang. Nomor. tapitapi nomor katalognya berurutan. Teknik 6 : Pengalamatan Alamat Setara Kunci (Key. karena kunci. maka harus mencakup nomor acuan mesin. Sebagai contoh. perusahaan penerbangan mempunyai 150 nomor penerbangan. Sebagai contoh. nomor penerbangan dan tanggal penerbangan.nomor itu mempunyai arti yang penting bagi perusahaan tersebut. pengalamatan simbul menunjuk manfaatnya. memiliki alamatsama dengan kunci supaya pengambilannya sederhana. pendekatan langsung ini tidak dimungkikan. Tetapi metode ini adalah sederhana dan cepat untuk aplikasi yang dapat menerapkannya.Dlam banyak aplikasi. Tetapi tidak setiap . Algoritma memakai nomor penerbangan dan tanggal untuk menghitung alamat berkas.nomor barang dari suatu pabrik tidak dapat diubah untuk menyesuaikan komputer karena nomor.celahnya. misalnya tentang penegasan pemesanan.

maka alamat byte relatif dari rekaman untuk distributor keA. Apabila ada sisa ruang dalam bucket itu. Mode lokasi CALC dari CODASYL memakai teknik ini. Kunci dari rekaman diubah menjadi suatu bilangan hampir acak.kadang disebut pengacakan (randomizing) atau pengadukan (scrambling). Bilangan hampir acak itu dapat berhubungan dengan alamat di mana suatu rekaman disimpan. maka cocok untuk perhitungan alamat berkas.ubah. Dalam teknik ini kunci rinci diubah menjadi suatu bilangan hampir acak.. dan harus dipilih satu yang sesuai dengan himpunan kunci dari rekaman. Apabila panjang rekaman 100 byte.kadang disebut pocket (saku) atau slot. Teknik 8 : Gabungan (Hashing) Suatu bentuk yang bermanfaat dan akurat dari teknik perhitungan alamat disebut gabungan atau kadang. karena itu. n. Apabila pada permulaan. yang terletak dalam interval l sampai N. 2.C dapat dihitung dengan rumus: (A -1) × 200 × 52 × 100 + (B− 1) × 52 × 100 + (C − 1) × 100 + 1.rekaman yang dibicarakan. produk ke. berkas hendak diamati. Dalam hal ini pengalamatan langsung tidak dapat berjalan. Masing.penerbangan terbang pada setiap hari. kadang. Bilangan n diubah menjadi alamt dari bucket itu dibaca.rekaman disimpan ditentukan sebagai berikut: 1. Untuk menghilangkan sifat kekakuan ini pengalamatan langsung biasanya diselesaikan dalam dua tingkat. Tingkat kedua mengubah bilangan urut itu menjadi alamt mesin. dan bilangan ini dipakai untuk menentuksn di man rinci tersebut disimpan. Apabila alamat mesin rekaman berbah. karena berhubungan dengansuatu area di mana suatu grup rekaman disimpan yang disebut sebagai bucket (keranjang). lokasi dalam mana rekaman. Sepaerti diketahui bahwa alamt mesin dpat berubah. Apabila rekaman. dan minggu ke.rekaman membentuk suatu matrik. Sebagai contoh. Jumalah rekaman nalari yang dapat disimpan dalam area ini disebut kapasitas bucket. 3.B.lebih ekonomis. karena berkas berkembang atau dipindahkan pada suatu unit yang lain atau berkas digabungkan atau dimodifikasi. Rekaman yang diberikan adalah tentang penjualan setiap produk untuk setiap distributor dalam setiap distributor dalam setiap minggu untuk tahun ini. maka bilangan.masing distributor menangani 200 produk. beberapa alamat yang dihasilkannya tidak memuat rekaman. maka rekaman nalari dapat disimpan ke dalam bucket itu. . Kerugian dari pola ini pengalamatan langsung yakni kelakuannya. suatu perusahaan mempunyai banyak distributor. Banyak algoritma gabungan memungkinkan operasi ini.bilangan urut yang dipakai tingkat kedua dapat dimodifikasi dengan mudah untuk menyesuaikan perubahan alamat mesin tersebut. di mana N adalah jumlah bucket yang dapat dipakai untuk simpanan. Suatu program akan mengubah alamat relatif ini ke dalam sebuah alamat mesin. Tingkat pertama mengubah kunci menjadi suatu bilangan urut. Cara ini .

3. Banyak rekaman dapat diperoleh dengansatu pencarian. yaitu pada bucket luapan. Ini dapat   sebagai urutan berikut. diubah menjadi suatu bilangan hampir acak.sifat acak dari algoritma. Teknik ini tidak akan mencapai kerapatan packing 100%.rekaman hendak dibaca dari berkas. dan dan rekaman fisis di dalamnya dibaca.search. Bucket dicari untuk mendapatkan rekaman nalari yng diminta. Apabila bucket luapan (overflow). Kunci dari rekaman yang akan dicari. 4. Bilangan n itu diubah menjadi alamat dari bucket ke. atau dapat sebagai suatu bucket pada area yang terpisah yang duihubungkan dengan pointer. dengan menggunakan algoritma yang sama.kadang perlu membaca lebih dari satu bucket luapan. Apabila rekaman. yaitu n. Banyak Berkas dapat mencapai kerapatan packing 80%atau 90% dan tidak ada ruang yang diperlukan untuk index. karena adanya sifat. .n. 2. Apabika rekaman yang diminta tiadak ada dalam bucket luapan dibaca dan di. maka metode pencarian adalah sama dengan di atas . yaitu: 1. tetapi ada yang memerlukan pencarian dalam satu detik. Kadang. Jarang diperlukan pencarian ketiga atau keempat.4.