Video: Kuis Logika / Algoritma - Quiz Logic / Algorithm 2024
Sebahagian daripada Algoritma Untuk Menipu Cheat Sheet
Jadual berikut menerangkan jenis algoritma dan algoritma yang mungkin berguna untuk pelbagai jenis analisis data. (Anda boleh mencari perbincangan semua algoritma ini dalam Algoritma Untuk Dummies.)
Algoritma | Deskripsi | Link Membantu |
A * Search | Algoritma menjejaki kos nod ketika ia meneroka mereka menggunakan persamaan: f (n) = g (n) + h (n), di mana:
n ialah pengenal nod g (n) ialah kos untuk mencapai node setakat ini h (n) Matlamat dari simpul f (n) ialah anggaran kos laluan dari n ke matlamat Idea ini adalah untuk mencari jalan yang paling menjanjikan terlebih dahulu dan elakkan laluan yang mahal. |
Standford. edu |
Tree Balanced | Semacam pokok yang mengekalkan struktur yang seimbang melalui penyusunan semula supaya ia dapat memberikan masa akses yang berkurangan. Bilangan elemen di sebelah kiri berbeza dari nombor di sebelah kanan dengan satu sama lain. | Webdocs |
Bidirectional Search | Teknik ini dicari secara serentak dari nod akar dan nod gol sehingga kedua-dua laluan carian bertemu di tengah. Satu kelebihan pendekatan ini adalah bahawa ia adalah masa yang cekap kerana ia mendapati penyelesaiannya lebih cepat daripada banyak penyelesaian kuasa kasar lain. Di samping itu, ia menggunakan memori lebih cekap daripada pendekatan lain dan sentiasa mencari penyelesaian. Kelemahan utama adalah kerumitan pelaksanaan. | Perancangan. cs |
Tree Binary | Ini adalah sejenis pokok yang mengandungi nod yang menyambung kepada sifar (nod daun), satu atau dua (nod cawangan) nod lain. Setiap nod mentakrifkan tiga elemen yang mesti disertakan untuk menyediakan sambungan dan menyimpan data: penyimpanan data, sambungan kiri, dan sambungan yang betul. | cs. cmu. edu |
Carian Breadth-First | Teknik ini bermula pada nod akar, meneroka setiap node anak pertama, dan hanya kemudian bergerak ke tahap seterusnya. Ia berkembang tahap demi tahap sehingga ia mendapat penyelesaian. Kelemahan algoritma ini adalah bahawa ia mesti menyimpan setiap nod dalam ingatan, yang bermaksud ia menggunakan sejumlah besar memori untuk sebilangan besar nod. Teknik ini dapat memeriksa nod duplikat, yang menjimatkan masa, dan selalu muncul dengan penyelesaian. | Khan Academcy |
Brute Force | Ini adalah teknik menyelesaikan masalah di mana seseorang cuba setiap penyelesaian yang mungkin, mencari penyelesaian masalah terbaik. Teknik kekuatan brute menjamin penyelesaian yang paling sesuai apabila ada tetapi sangat memakan masa untuk melaksanakan bahawa kebanyakan orang mengelakkannya. | Igm. Univ |
Carian Kedalaman Pertama | Teknik ini bermula pada nod akar dan meneroka satu set node anak yang disambungkan sehingga ia mencapai nod daun. Ia berkembang cawangan mengikut cawangan sehingga ia mendapat penyelesaian. Kelemahan algoritma ini adalah bahawa ia tidak dapat memeriksa nod pendua, yang bermaksud bahawa ia boleh melintasi laluan nod yang sama lebih daripada satu kali. Malah, algoritma ini tidak dapat mencari penyelesaian sama sekali, yang bermaksud bahawa anda mesti menentukan titik cutoff untuk menjaga algoritma dari mencari tanpa batas. Satu kelebihan pendekatan ini ialah memori itu berkesan. | Hacker Earth |
Divide and Conquer | Ini adalah teknik penyelesaian masalah di mana masalah tersebut dipecahkan kepada potongan terkecil dan diselesaikan menggunakan pendekatan yang paling mudah. Teknik ini menjimatkan masa dan sumber yang banyak jika dibandingkan dengan pendekatan lain, seperti kekerasan. Walau bagaimanapun, ia tidak selalu menjamin hasil terbaik. | Khan Academy |
Dijikstra | Ini adalah algoritma yang digunakan untuk mencari jalan terpendek dalam graf yang diarahkan, berwajaran (mempunyai berat positif). | Geeks untuk Geeks |
Graf | Graf adalah sejenis pelanjutan pokok. Seperti pokok, anda mempunyai nod yang menyambung satu sama lain untuk mewujudkan hubungan. Bagaimanapun, tidak seperti pokok binari, graf boleh mempunyai lebih daripada satu atau dua sambungan. Sebenarnya, nod grafik sering mempunyai banyak sambungan. Anda melihat graf yang digunakan di tempat-tempat seperti peta untuk GPS dan pelbagai tempat lain yang mana pendekatan atas-bawah sesuatu pokok tidak akan berfungsi. | Tutorial |
Algoritma tamak | Thistechnique salah satu penyelesaian masalah di mana penyelesaian bergantung pada jawapan yang terbaik untuk setiap langkah proses penyelesaian masalah. Algoritma tamak biasanya membuat dua andaian:
Membuat satu pilihan yang optimum pada satu langkah yang mungkin. Dengan memilih pemilihan yang optimum pada setiap langkah, mencari penyelesaian optimum untuk masalah keseluruhan mungkin. |
Tutorial |
Greedy Best-First Search (BFS) | Algoritma sentiasa memilih laluan yang paling hampir dengan matlamat menggunakan persamaan: f (n) = n). Algoritma tertentu ini dapat mencari penyelesaian dengan cepat, tetapi juga dapat terjebak dalam gelung, sehingga banyak orang tidak menganggapnya sebagai pendekatan yang optimum untuk mencari solusi. | Centurion2 |
Hashing | Ini adalah satu kaedah untuk meramalkan lokasi item data tertentu dalam struktur data (apa pun strukturnya) sebelum mencarinya. Pendekatan ini bergantung pada penggunaan kunci yang dimasukkan ke indeks. Fungsi hash bertukar menjadi nilai numerik yang digunakan oleh algoritma ke dalam jadual hash. Jadual hash menyediakan cara untuk membuat indeks yang menunjuk kepada elemen dalam struktur data supaya algoritma mudah meramalkan lokasi data. | Tutorial |
Heap | Ini adalah pokok canggih yang membolehkan kemasukan data ke dalam struktur pokok. Penggunaan penyisipan data menjadikan penyortiran lebih cepat. Anda boleh mengklasifikasikan pokok ini sebagai timbunan max dan timbunan min, bergantung kepada keupayaan pokok untuk segera memberikan nilai maksimum atau minimum yang terdapat di dalam pokok itu. | Tutorial |
Heuristics | Ini adalah teknik penyelesaian masalah yang bergantung kepada penemuan diri dan menghasilkan hasil yang cukup berguna (tidak semestinya optimum, tetapi cukup baik) untuk mengatasi masalah dengan baik bahawa penyelesaian yang lebih baik bukanlah ' tidak perlu. Penemuan diri adalah proses membenarkan algoritma menunjukkan kepada anda jalan yang berpotensi berguna untuk penyelesaian (tetapi anda masih harus mengandalkan intuisi dan pemahaman manusia untuk mengetahui sama ada penyelesaiannya adalah yang tepat). | Northwest. edu |
MapReduce | Ini adalah kerangka kerja untuk membuat algoritma berfungsi menggunakan perhitungan secara selari (menggunakan beberapa komputer bersambung bersama dalam rangkaian), membolehkan algoritma menyelesaikan penyelesaian mereka dengan lebih cepat. | Hadoop Apache |
Mergesort | Mergesort ialah kaedah penyusun data berasaskan tujuan umum. Ia bergantung kepada pendekatan membahagi-dan-menakluk untuk melaksanakan tugasnya. | Geeks for Geeks |
Nash Equilibrium | Ini adalah teori permainan di mana pemain lain tahu strategi keseimbangan bagi pemain lain, sehingga tidak ada yang dapat memperoleh keuntungan dengan mengubah strategi pribadinya. Teori ini melihat kegunaan dalam situasi bermusuhan di mana pemain mesti mengambil kira keputusan yang dibuat oleh semua pemain lain untuk memenangi permainan. | Khan Academy |
PageRank | PageRank adalah algoritma untuk mengukur kepentingan nod dalam graf. Algoritma ini adalah akar algoritma teras Google untuk menjanakan carian yang relevan kepada pengguna. | Princeton. edu |
Pencarian Heuristik Murni | Algoritma ini memperluaskan nod mengikut kos mereka. Ia mengekalkan dua senarai. Senarai tertutup mengandungi nod yang telah dieksplorasi, dan senarai terbuka mengandungi node yang masih harus diterokai. Dalam setiap lelaran, algoritma memperluaskan nod dengan kos yang paling rendah. Semua nod kanak-kanak diletakkan dalam senarai tertutup dan kos nod kanak-kanak individu dikira. Algoritma ini menghantar nod kanak-kanak dengan kos rendah kembali ke senarai terbuka dan memadam nod kanak-kanak dengan kos yang tinggi. Akibatnya, algoritma itu melakukan carian pintar, berdasarkan kos untuk penyelesaiannya. | Dunia Pengkomputeran |
Quicksort | Ini adalah strategi penyortiran tujuan umum berdasarkan partitioning data array ke array yang lebih kecil. Ia bergantung kepada pendekatan membahagi-dan-menakluk untuk melaksanakan tugasnya. | Tutorial |
Pokok Tidak Setuju | Ini adalah pokok yang meletakkan item data baru di mana pun perlu di dalam pokok tanpa mengira keseimbangan. Kaedah menambah item membuat bangunan pokok dengan lebih cepat tetapi mengurangkan kelajuan akses apabila mencari atau menyusun. | Quora |