Setiap orang dalam kehidupan sehariannya terpaksa menyelesaikan sebilangan besar tugas yang berbeza. Dia tidak memikirkan untuk menyelesaikan beberapa masalah ("membeli bahan makanan"), sementara yang lain menimbulkan kesulitan dan pemikiran panjang ("mengumpulkan kubus Rubik"). Contoh-contoh tugas sederhana dan kompleks di atas mempunyai persamaan yang dapat dipecah menjadi beberapa langkah yang dapat difahami secara individu. Urutan langkah-langkah tersebut dapat digunakan sebagai peringatan untuk membantu menyelesaikan masalah. Urutan ini boleh dipanggil algoritma.
Sudah tentu, anda dapat mengumpulkan kubus Rubik tanpa memo, hanya dengan menggerakkan bahagian tepi dalam urutan rawak. Tetapi menghitung pilihan yang mungkin memerlukan masa yang lama, ia akan menjadi proses yang tidak produktif dan tidak optimum. Adalah lebih senang untuk mempunyai senarai langkah, pelaksanaan yang berurutan akan selalu membawa kepada hasil yang positif. Prinsip-prinsip inilah yang membentuk konsep seperti "algoritma".
Algoritma adalah sekumpulan arahan (langkah) yang menerangkan urutan operasi pelaksana untuk mencapai hasil menyelesaikan masalah dalam sejumlah tindakan.
Apa itu persembahan?
Untuk pemahaman yang lebih baik mengenai algoritma secara umum, perlu juga mempertimbangkan konsep "algoritma pelaksana". Pelaksana dalam konsep algoritma bermaksud sistem abstrak yang mampu melakukan tindakan yang dijelaskan oleh algoritma, serta memiliki sejumlah ciri. Sebagai pelaku, satu atau cara teknikal yang paling sering dimaksudkan (pencetak 3D, mesin CNC, komputer), namun, harus difahami bahawa ini adalah konsep yang luas: pelaku boleh, misalnya, seseorang.
Walaupun begitu, hanya sistem yang secara bersamaan memiliki sejumlah parameter yang dapat disebut sebagai pelaku:
- persekitaran;
- sistem arahan;
- tindakan asas;
- penolakan, sekiranya pelaksanaan tindakan tidak mungkin.
Sifat algoritma
Batasan yang dikenakan pada konsep "pelaku" membawa kepada fakta bahawa konsep "algoritma" juga mempunyai sebilangan sifat dan batasan. Algoritma telah tersebar dengan tepat kerana keterbatasan ini, yang menyumbang kepada standardisasi. Antara sifat algoritma adalah:
- besar-besaran (kemampuan algoritma untuk tetap betul untuk pelbagai set data input);
- kepastian (pada mana-mana langkah algoritma, pelaku mesti mempunyai cukup data untuk melaksanakannya);
- determinisme (dengan set data input yang sama, hasil yang sama harus diperoleh);
Mengapa algoritma diperlukan?
Sifat di atas memberikan penggunaan algoritma yang meluas. Oleh itu, algoritma berfungsi untuk menyeragamkan perihalan sebarang proses. Tanpa algoritma, pengiraan apa pun tidak mustahil, dan penyelesaian untuk sebarang masalah akan bermula dari awal - walaupun ia diselesaikan berkali-kali. Penggunaan algoritma membolehkan anda menyelesaikan masalah dengan jenis yang cepat, mengurangkan masa yang dihabiskan untuk mencari penyelesaian, mengotomatisasi proses mencarinya, dan juga mengedarkan penyelesaian yang dijumpai dalam bentuk standard, yang bermaksud semua orang dapat memahaminya.