JavaRush /Blog Java /Random-MS /Ulasan buku: "Struktur dan Algoritma Data Java", Robert L...

Ulasan buku: "Struktur dan Algoritma Data Java", Robert Laforet

Diterbitkan dalam kumpulan
Kekuatan setiap pengaturcara adalah pada pengetahuannya. Ya, keupayaan untuk google dengan baik juga tidak berada di tempat terakhir, tetapi bagaimanapun, mesti ada sejumlah pengetahuan, berdasarkan cara pemikiran pembangun terbentuk. Semakin mendalam pengetahuan ini, semakin menarik penyelesaian yang boleh dibuat oleh pengaturcara. Ulasan buku: “Struktur dan Algoritma Data Java”, Robert Laforet - 1Salah satu bahagian "asas" sedemikian ialah struktur data dan algoritma. Bagaimanakah anda boleh mengembangkan pengetahuan anda ke arah ini? Sebagai pilihan, cari buku, pengetahuan daripadanya akan menjadi simpanan kalis api dan asas untuk kajian lanjut. Bagi saya, buku sedemikian ialah "Struktur dan Algoritma Data Java" oleh Robert Laforet .Ulasan buku: "Struktur dan Algoritma Data Java", Robert Laforet - 2

Untuk siapa

Penonton untuk buku ini boleh terdiri daripada orang yang sangat luas, kerana ia berguna untuk mereka yang baru menguasai sintaks bahasa Java dan untuk pengaturcara berlatih, untuk pemahaman yang lebih mendalam tentang ciri struktur data dan algoritma. .

Tentang apa

Buku ini ditumpukan kepada kajian dan penggunaan struktur data dan algoritma dalam pengaturcaraan. Ia akan mengajar pembaca bagaimana struktur data menentukan cara data disusun dalam ingatan, serta cara algoritma melaksanakan pelbagai operasi pada struktur ini. Mari kita gali lebih dalam dan lihat apakah sebenarnya buku ini:
  1. Tatasusunan. Sisip, cari dan padam operasi dalam tatasusunan dan tatasusunan tertib diliputi secara terperinci. Menunjukkan operasi carian linear dan binari untuk tatasusunan tertib dan tidak tertib. Anda juga akan mempelajari apa itu O-sintaks.
  2. Menyusun. Tiga kaedah pengisihan mudah dipertimbangkan: "isih gelembung", "isih pilihan", "isih sisipan". Dari buku tersebut anda akan belajar yang mana satu paling lambat dan yang mana satu paling mudah.
  3. Tumpukan dan beratur. Struktur data seperti tindanan, baris gilir dan baris gilir keutamaan, keberkesanannya dan pelaksanaan dalam Java dipertimbangkan.
  4. Senarai terpaut. Buku ini bercakap tentang senarai dua pautan dan dua pautan, kecekapannya, dan cara operasi sisipan, carian dan pemadaman dilakukan. Iterator dan kaedah yang mereka perlukan juga dilindungi.
  5. Rekursi. Rekursi dipertimbangkan dalam pelbagai situasi, seperti: mengira nombor segi tiga dan faktorial, membina anagram, melakukan carian binari rekursif, menyelesaikan teka-teki Menara Hanoi, melaksanakan isihan gabungan, menyelesaikan masalah ransel.
  6. Pengisihan bukan remeh. Kaedah yang lebih maju dipertimbangkan: Isih shell, isihan cepat dan isihan radix, algoritmanya, kecekapan.
  7. Pokok binari. Pepohon carian binari seimbang dipertimbangkan, cara ia berfungsi, operasi sisipan dan pemadamannya, pelbagai jenis traversal, carian minimum dan maksimum, cari pengganti. Kod Huffman juga akan dilindungi.
  8. Pokok merah dan hitam. Kami menganggap salah satu jenis pokok seimbang yang paling berkesan, putaran dan operasi penukaran warna mereka perlu untuk mengimbangi.
  9. Pokok 2-3-4. Pokok jenis ini diterangkan sebagai contoh pokok berbilang laluan; operasi dan hubungannya dengan pokok B, yang digunakan untuk penyimpanan data luaran, dibincangkan.
  10. Hash jadual. Hashing dan pelbagai kaedahnya diliputi, seperti probing linear dan kuadratik, pencincangan berganda dan kaedah rantaian. Anda juga boleh mengetahui cara pencincangan boleh digunakan untuk mengatur storan fail luaran.
  11. Piramid. Ini ialah jenis pokok khas yang digunakan untuk melaksanakan barisan keutamaan dengan cekap. Buku ini membincangkan mekanisme operasi sisipan, pemadaman, dan penyusunan semula. Anda juga akan mempelajari apa itu pilih atur piramid dan bagaimana ia boleh dilaksanakan di Jawa.
  12. graf. Graf berwajaran dan tidak berwajaran, algoritma untuk mencari melaluinya dan algoritma yang digunakan untuk mencari laluan lintasan terpendek dibentangkan.
Untuk lebih jelas, setiap bab menyediakan pelaksanaannya sendiri bagi struktur data yang dipersoalkan. Sebagai contoh, jika ini ialah senarai pautan tunggal, contoh kelas yang melaksanakan fungsi yang diterangkan akan diberikan. Bab terakhir buku, membina pengetahuan yang diperoleh daripada bab-bab sebelumnya, mula mengumpulkan semua pengetahuan menjadi satu gambaran. Sebagai contoh, anda akan dapat dengan jelas membentuk idea tentang struktur data yang hendak digunakan dalam situasi mana: Ulasan buku: “Struktur dan Algoritma Data Java”, Robert Laforet - 3Terdapat juga latihan kecil pada akhir setiap bab. Sesetengah daripada mereka melibatkan melakukan sesuatu dengan apl Bengkel , manakala yang lain memberi anda tugasan kecil terus dalam kod.

Apakah itu Apl Bengkel

Aplikasi bengkel digunakan untuk menunjukkan struktur dan algoritma ini . Aplikasi direka bentuk sebagai applet Java yang boleh dijalankan dalam penyemak imbas. Aplikasi bengkel mencipta gambar rajah grafik yang menunjukkan cara algoritma atau struktur data berfungsi. Sebagai contoh, dalam satu aplikasi yang direka untuk memaparkan lajur yang diisih dalam tertib menaik, setiap kali anda mengklik butang pada histogram, langkah seterusnya akan dilakukan. Dalam kes ini, nilai pembolehubah yang terlibat dalam algoritma ini akan dipaparkan supaya anda boleh melihat bagaimana kod itu dilaksanakan (mengingatkan perihalan debugger , bukan?).

Bagaimana untuk memuat turun dan memasang Bengkel

  1. Anda boleh memuat turun applet di sini . Рецензия на книгу: «Структуры данных и алгоритмы Java», Роберт Лафоре - 4
  2. Klik pada WorkshopApplets.ZIP dan muat turun arkib dengan applet.
  3. Untuk memahami applet, anda boleh membaca topik ini dan ulasan mengenainya.

Kelebihan buku

  • sangat mudah dibaca, banyak contoh dijelaskan hampir "pada jari anda";
  • membuka mata anda kepada banyak perkara "klasik", tanpa menggunakan formula matematik yang kompleks. Nah, hampir tanpa mereka :)
  • Walaupun contoh adalah dalam Java, tindakan yang berlaku dalam kod dijelaskan dengan terperinci oleh teks berikut dan komen dalam kod. Oleh itu, ia boleh dibaca oleh pengguna mana-mana bahasa pengaturcaraan, kerana contoh kod agak mudah: ia membaca hampir seperti pseudokod.

Keburukan buku

  • Walaupun penjelasan "di jari", terdapat jurang di dalamnya. Untuk menerangkan tatasusunan pengisihan, pengarang melukis pasukan bola sepak, tetapi pengisihan Shell secara praktikal tidak diterangkan di sana: Saya tidak dapat memahaminya dan membaca tentangnya di Internet;
  • Mungkin terdapat kesilapan taip, biasanya dalam imej atau jadual;
  • sesetengah kod agak ketinggalan zaman.

Analog

Saya mengesyorkan analog buku ini atau mereka yang mengikutinya (bagi mereka yang ingin sambung belajar):
  • "Algoritma di Jawa" oleh Robert Sedgwick;
  • "Algoritma: Pembinaan dan Analisis" oleh Thomas Cormen.

Pokoknya

Buku ini mempunyai sedikit keburukan, jadi ia sangat berbaloi untuk dibaca. Ia menerangkan dengan jelas banyak topik asas dan asas, seperti pelbagai jenis, tatasusunan, pokok, koleksi, graf dan sebagainya. Memandangkan buku itu tidak terikat kuat dengan Java , pangkalan pengetahuan yang diperoleh daripada mempelajarinya akan berguna dalam bahasa pengaturcaraan lain. Mesti ada, mesti membaca - jika anda seorang pembangun.Рецензия на книгу: «Структуры данных и алгоритмы Java», Роберт Лафоре - 6
Komen
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION