Printed
Struktur Data: Pondasi Membuat Program yang Elegan dan Efisien
Buku ini mengajak berpikir rasional dalam memilih dan menetapkan struktur data untuk program. Mahasiswa bertindak sebagai evaluator yang rasional pada langkah awal perancangan program yaitu memilih dan menetapkan struktur data untuk implementasi modul/kelas atau subrutin dengan menelaah fakta-fakta kinerja struktur data. Struktur data yang tepat akan membuat program lebih ringkas, lebih bersih, lebih elegan, lebih mudah, elegan dan lebih ampuh berkinerja tinggi (yang efisien dalam ruang memori dan waktu). Pilihan yang tepat dapat menyebabkan program berjalan beberapa detik di mana struktur yang lain akan berlangsung ribuan tahun. Pemilihan struktur data berpengaruh pada algoritma yang dapat diterapkan untuk memberi layanan. Beragam progam dapat dibuat menjadi lebih kecil (dan lebih baik dalam kinerjanya) dengan menstrukturkan data internalnya. Bahasan struktur data merupakan gudang kekayaan konsep, kecerdikan, dan keampuhan abstraksi. Bermacam algoritma serta sarana evaluasi dan perbandingan alternatif-alternatif terlibat di dalamnya. Setiap program bergantung algoritma dan struktur data. Untungnya, hanya beberapa program spesifik yang bergantung penemuan algoritma dan struktur data yang baru. Bahkan pada sesuatu yang baru seperti web server dan web browser, kebanyakan struktur data yang digunakan adalah array, list, pohon, dan hash yang merupakan kajian bidang algoritma dan struktur data sejak tahun 1950-an. Juga bilapun program memerlukan sesuatu yang tampak baru, kebanyakan berbasis pada hal-hal yang lebih sederhana yang telah ditemukan. Berkonsentrasi pada struktur data dan algoritma fundamental adalah penting untuk memahami karakteristik esensi dan dapat mengapresiasinya. Pada buku ini, mahasiswa dikenalkan pada pemilihan dan penetapan struktur data untuk aplikasi atau maksud atau keperluan tertentu. Buku ini telah dikompakkan sehingga layak untuk diajarkan selama 1 semester. Pada buku ini, mahasiswa akan bertindak sebagai pemakai, kemudian evaluator, peniru serta kemudian pembangun yang kreatif. Mahasiswa juga harus diarahkan menjadi akrab dengan perangkat pengembangan yang semakin kompleks, sistematik yang sangat jelas.
Tidak tersedia versi lain