JavaRush /Java Blog /Random-ID /Resensi buku: “Struktur dan Algoritma Data Java”, Robert ...

Resensi buku: “Struktur dan Algoritma Data Java”, Robert Laforet

Dipublikasikan di grup Random-ID
Kekuatan setiap programmer ada pada pengetahuannya. Ya, kemampuan google dengan baik juga bukan yang terakhir, namun tetap harus ada sejumlah ilmu yang menjadi dasar terbentuknya cara berpikir pengembang. Semakin dalam pengetahuan ini, semakin banyak solusi menarik yang bisa dihasilkan oleh seorang programmer. Resensi buku: “Struktur dan Algoritma Data Java”, Robert Laforet - 1Salah satu bagian dari “basis” tersebut adalah struktur data dan algoritma. Bagaimana Anda bisa memperluas pengetahuan Anda ke arah ini? Sebagai pilihan, carilah buku yang ilmunya akan menjadi bekal tahan api dan landasan untuk kajian lebih lanjut. Bagi saya, buku seperti itu adalah “Struktur dan Algoritma Data Java” oleh Robert Laforet .Resensi buku: “Struktur dan Algoritma Data Java”, Robert Laforet - 2

Untuk siapa

Pembaca buku ini bisa sangat luas, karena akan berguna baik bagi mereka yang baru menguasai sintaksis bahasa Java , maupun bagi para programmer yang berlatih, untuk pemahaman yang lebih mendalam tentang fitur-fitur struktur data dan algoritma. .

Tentang apa

Buku ini dikhususkan untuk mempelajari dan menggunakan struktur data dan algoritma dalam pemrograman. Ini akan mengajarkan pembaca bagaimana struktur data menentukan cara data diatur dalam memori, serta bagaimana algoritma melakukan berbagai operasi pada struktur ini. Mari kita gali lebih dalam dan lihat apa sebenarnya isi buku ini:
  1. Array. Operasi penyisipan, pencarian, dan penghapusan dalam array dan array terurut dibahas secara rinci. Mendemonstrasikan pengoperasian pencarian linier dan biner untuk array terurut dan tidak berurutan. Anda juga akan mempelajari apa itu sintaksis O.
  2. Penyortiran. Tiga metode pengurutan sederhana dipertimbangkan: “pengurutan gelembung”, “pengurutan pilihan”, “pengurutan penyisipan”. Dari buku tersebut Anda akan mengetahui mana yang paling lambat dan mana yang paling sederhana.
  3. Tumpukan dan antrian. Struktur data seperti tumpukan, antrian, dan antrian prioritas, efektivitasnya, dan implementasinya di Java dipertimbangkan.
  4. Daftar tertaut. Buku ini membahas tentang daftar tertaut ganda dan tertaut ganda, efisiensinya, dan bagaimana operasi penyisipan, pencarian, dan penghapusan dilakukan. Iterator dan metode apa yang diperlukan juga dibahas.
  5. Rekursi. Rekursi dipertimbangkan dalam berbagai situasi, seperti: menghitung bilangan segitiga dan faktorial, membuat anagram, melakukan pencarian biner rekursif, memecahkan teka-teki Menara Hanoi, menerapkan pengurutan gabungan, memecahkan masalah knapsack.
  6. Penyortiran non-sepele. Metode yang lebih maju dipertimbangkan: Pengurutan shell, pengurutan cepat dan pengurutan radix, algoritmanya, efisiensi.
  7. Pohon biner. Pohon pencarian biner seimbang dipertimbangkan, cara kerjanya, operasi penyisipan dan penghapusannya, berbagai jenis traversal, pencarian minimum dan maksimum, pencarian penerus. Kode Huffman juga akan dibahas.
  8. Pohon merah dan hitam. Kami mempertimbangkan salah satu varietas pohon seimbang yang paling efektif, operasi rotasi dan peralihan warnanya diperlukan untuk keseimbangan.
  9. Pohon 2-3-4. Pohon jenis ini digambarkan sebagai contoh pohon multipath; operasi dan hubungannya dengan pohon-B, yang digunakan untuk penyimpanan data eksternal, dibahas.
  10. Tabel hash. Hashing dan berbagai metodenya dibahas, seperti probing linier dan kuadrat, hashing ganda, dan metode chaining. Anda juga dapat mempelajari bagaimana hashing dapat digunakan untuk mengatur penyimpanan file eksternal.
  11. Piramida. Ini adalah jenis pohon khusus yang digunakan untuk mengimplementasikan antrian prioritas secara efisien. Buku ini membahas tentang mekanisme pengoperasian penyisipan, penghapusan, dan penataan ulang. Anda juga akan mempelajari apa itu permutasi piramidal dan bagaimana penerapannya di Java.
  12. Grafik. Grafik berbobot dan tidak berbobot, algoritme untuk mencarinya, dan algoritme yang digunakan untuk menemukan jalur traversal terpendek disajikan.
Untuk lebih jelasnya, setiap bab menyediakan implementasinya sendiri terhadap struktur data yang dimaksud. Misalnya, jika ini adalah daftar tertaut tunggal, contoh kelas yang mengimplementasikan fungsionalitas yang dijelaskan akan diberikan. Bab terakhir buku ini, berdasarkan pengetahuan yang diperoleh dari bab-bab sebelumnya, mulai mengumpulkan semua pengetahuan ke dalam satu gambaran. Misalnya, Anda akan dapat dengan jelas membentuk gagasan tentang struktur data mana yang akan digunakan dalam situasi apa: Resensi buku: “Struktur dan Algoritma Data Java”, Robert Laforet - 3Ada juga latihan kecil di akhir setiap bab. Beberapa di antaranya melibatkan melakukan sesuatu dengan aplikasi Lokakarya , sementara yang lain memberi Anda tugas-tugas kecil langsung di dalam kode.

Apa itu Aplikasi Lokakarya

Aplikasi lokakarya digunakan untuk mendemonstrasikan struktur dan algoritma ini . Aplikasi dirancang sebagai applet Java yang dapat dijalankan di browser. Aplikasi lokakarya membuat diagram grafis yang menunjukkan cara kerja suatu algoritma atau struktur data. Misalnya, dalam satu aplikasi yang dirancang untuk menampilkan kolom yang diurutkan dalam urutan menaik, setiap kali Anda mengklik tombol pada histogram, langkah berikutnya akan dilakukan. Dalam hal ini, nilai variabel yang terlibat dalam algoritme ini akan ditampilkan sehingga Anda dapat melihat bagaimana kode dijalankan (mengingatkan pada deskripsi debugger , bukan?).

Cara mendownload dan menginstal Workshop

  1. Anda dapat mengunduh applet di sini . Resensi buku: “Struktur dan Algoritma Data Java”, Robert Laforet - 4
  2. Klik WorkshopApplets.ZIP dan unduh arsip dengan applet.
  3. Untuk memahami applet, Anda dapat membaca topik ini dan komentarnya.

Kelebihan buku ini

  • sangat mudah dibaca, banyak contoh dijelaskan hampir “dengan jari Anda”;
  • membuka mata Anda terhadap banyak hal “klasik”, tanpa menggunakan rumus matematika yang rumit. Yah, hampir tanpa mereka :)
  • Meskipun contohnya ada di Java, tindakan yang terjadi dalam kode dijelaskan dengan sangat rinci melalui teks berikut dan komentar dalam kode. Oleh karena itu, dapat dibaca oleh pengguna bahasa pemrograman apa pun, karena contoh kodenya cukup sederhana: dapat dibaca hampir seperti kodesemu.

Kontra dari buku ini

  • Meski penjelasannya "di jari", ada celah di dalamnya. Untuk menjelaskan penyortiran array, penulis menggambar tim sepak bola, tetapi penyortiran Shell secara praktis tidak dijelaskan di sana: Saya tidak dapat memahaminya dan membacanya di Internet;
  • Mungkin ada kesalahan ketik, biasanya pada gambar atau tabel;
  • beberapa kode sudah ketinggalan jaman.

Analoginya

Saya merekomendasikan analogi buku ini atau berikutnya (bagi yang ingin melanjutkan belajar):
  • “Algoritma di Java” oleh Robert Sedgwick;
  • “Algoritma: Konstruksi dan Analisis” oleh Thomas Cormen.

Intinya

Buku ini memiliki sedikit kekurangan, jadi sangat layak untuk dibaca. Ini dengan jelas menjelaskan banyak topik dasar dan mendasar, seperti berbagai macam, array, pohon, koleksi, grafik, dan sebagainya. Karena buku ini tidak terikat erat dengan Java , basis pengetahuan yang diperoleh dari mempelajarinya akan berguna dalam bahasa pemrograman lain. Harus punya, harus dibaca - jika Anda seorang pengembang.Resensi buku: “Struktur dan Algoritma Data Java”, Robert Laforet - 6
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION