Algoritma karakteristik, untuk apa, bagian, contoh

Algoritma karakteristik, untuk apa, bagian, contoh

A algoritma Ini adalah serangkaian instruksi yang dirancang untuk melakukan tugas tertentu. Artinya, ini adalah prosedur sistematis yang dalam sejumlah langkah yang terbatas menghasilkan jawaban atas pertanyaan atau solusi suatu masalah. Contoh algoritma adalah mesin pencari Google, di mana dengan memasukkan kata, ia memberikan beberapa hasil dalam bentuk halaman web.

Ini bisa menjadi proses yang kompleks, seperti mereproduksi file musik, atau operasi sederhana, seperti menambahkan dua angka. Dalam pemrograman komputer, algoritma dibuat sebagai fungsi. Fungsi -fungsi ini adalah program kecil yang dapat dirujuk oleh program utama.

Aplikasi untuk memvisualisasikan gambar dapat berisi pustaka fungsi, masing -masing menggunakan algoritma tertentu untuk mewakili format file gambar yang berbeda.

Program untuk mengedit gambar dapat berisi algoritma yang dirancang untuk memproses data gambar. Beberapa contoh adalah pemangkasan, ukuran perubahan, ketajaman, kabur, mengurangi mata merah dan peningkatan warna.

[TOC]

Karakteristik algoritma

Kejelasan dan Presisi

Algoritma harus jelas dan tidak ambigu. Setiap langkah atau tindakannya harus didefinisikan secara akurat, jelas jelas dalam semua aspek dan harus secara tegas memiliki satu makna tunggal.

Tiket yang ditentukan dengan baik

Algoritma adalah nol atau lebih entri, diambil dari satu set objek tertentu. Jika algoritma menunjukkan bahwa data input harus diambil, data input ini harus didefinisikan dengan baik.

Output yang ditentukan dengan baik

Algoritma selalu memiliki satu atau lebih keluar, yang memiliki hubungan dengan pintu masuk. Algoritma harus secara jelas menentukan informasi output mana yang akan terjadi dan juga harus didefinisikan dengan baik.

Finitude

Algoritma harus terbatas, yaitu, harus selalu berakhir di beberapa titik, setelah sejumlah langkah yang terbatas, dan tidak terpikat pada ikatan yang tak terbatas atau hal serupa.

Bisa dilakukan

Algoritma harus terampil dan sederhana, sehingga dapat dieksekusi tanpa masalah dengan sumber daya yang tersedia. Oleh karena itu, Anda tidak boleh mengandung teknologi masa depan.

Kemandirian Bahasa

Algoritma yang dirancang harus tidak tergantung pada bahasa, yaitu, harus dibentuk hanya dengan instruksi sederhana yang dapat diimplementasikan dalam bahasa pemrograman apa pun dan, bagaimanapun, hasilnya selalu sama, seperti yang diharapkan seperti yang diharapkan.

Program yang efisien

Selalu ada cara berbeda untuk melakukan operasi tertentu dalam suatu program. Oleh karena itu, programmer berusaha untuk membuat algoritma yang paling efisien.

Dengan menggunakan algoritma yang sangat efisien, dapat dijamin bahwa program dieksekusi dengan kecepatan yang lebih tinggi, menggunakan sumber daya sistem minimum.

Namun, algoritma tidak selalu menghasilkan pertama kali. Untuk alasan ini, programmer berusaha memperbaikinya untuk memasukkannya ke dalam pembaruan perangkat lunak di masa mendatang.

Itu dapat melayani Anda: 30 fisikawan paling terkenal dan penting dalam sejarah

Oleh karena itu, setiap kali Anda mengetahui versi baru dari suatu aplikasi dengan kinerja yang lebih baik, itu berarti bahwa versi ini berisi algoritma yang lebih efisien.

Untuk apa algoritma?

Algoritma ini adalah instrumen yang sangat berguna, digunakan untuk melakukan pekerjaan. Dalam ilmu komputer, saat memilih algoritma terbaik, dijamin bahwa komputer melakukan tugas yang diberikan dengan cara terbaik.

Oleh karena itu, ia berfungsi untuk mengoptimalkan program komputer dengan sumber daya yang tersedia. Artinya, ketika suatu masalah diputuskan untuk menyelesaikan melalui algoritma terbaik, kombinasi kecepatan terbaik dari program dan konsumsi memori yang lebih rendah diinginkan.

Algoritma berbeda yang dapat dipelajari sama beragamnya dengan masalah yang dipecahkan. Namun, sangat mungkin masalah yang sedang dicoba serupa dengan masalah lain dalam beberapa aspek.

Dengan memahami berbagai algoritma, Anda dapat memilih yang paling cocok untuk suatu masalah dan menerapkannya dengan benar.

File kompresi

Algoritma ini disesuaikan dan dioptimalkan secara khusus untuk jenis file yang diarahkannya. Misalnya, setiap format audio menggunakan cara yang berbeda untuk menyimpan data. Saat didekodekan oleh codec audio, itu akan menghasilkan file suara yang mirip dengan bentuk gelombang asli.

Data dienkripsi

Algoritma juga digunakan untuk melindungi data atau jalur komunikasi. Alih -alih menyimpan data terkompresi untuk menggunakan lebih sedikit ruang disk, mereka disimpan sehingga program lain tidak dapat mendeteksinya.  Saat data dienkripsi, apa yang disimpan tidak menyerupai apa adanya.

Bagaimana cara kerja algoritma?

Untuk mendapatkan komputer untuk melakukan sesuatu, Anda harus menulis program komputer. Untuk menulis program ini, Anda harus memberi tahu komputer, langkah demi langkah, apa yang ingin Anda lakukan.

Kemudian komputer menjalankan program, melakukan setiap instruksi secara otomatis, untuk mencapai hasil akhir. Seperti yang ditunjukkan apa yang harus dilakukan pada komputer, Anda juga dapat memilih bagaimana itu, melalui algoritma, menjadi teknik dasar yang digunakan untuk melakukan pekerjaan itu.

Contoh kasus

Katakanlah Anda memiliki teman yang tiba di bandara dan perlu pergi dari bandara ke rumah kami. Ini adalah empat algoritma berbeda yang dapat diberikan untuk menyelesaikan situasi ini:

Algoritma hubungi saya

- Saat pesawat tiba, hubungi ponsel saya.

- Berkumpul dengan saya di luar area pengiriman bagasi.

Algoritma taksi

- Pergi ke perhentian taksi.

Dapat melayani Anda: Bingkai Metodologis: Cara Menulisnya, Struktur, Contoh

- Pergi ke taksi.

- Beri pengemudi alamat saya.

Algoritma bus

- Meninggalkan bandara, ambil bus nomor 70.

- Setelah mencapai jalan utama, ambil bus 14.

- Keluar di Elmo Street.

- Berjalan dua blok ke utara, ke rumah saya.

Algoritma menyewa kendaraan

- Ambil layanan transportasi ke tempat di mana mobil sewa.

- Menyewa kendaraan.

- Ikuti instruksi GPS untuk sampai ke rumah saya.

Keempat algoritma mencapai tujuan yang persis sama, tetapi masing -masing melakukannya secara berbeda. Setiap algoritma juga memiliki biaya dan waktu perjalanan yang berbeda. Oleh karena itu, algoritma dipilih sesuai dengan keadaan.

Bagian dari algoritma

Akuisisi data masuk

Algoritma harus memiliki sumber daya tertentu untuk membaca nilai -nilai dari sumber eksternal. Sebagian besar algoritma memerlukan beberapa nilai data untuk menentukan masalah tertentu. Misalnya, koefisien polinomial.

Perhitungan

Algoritma harus memiliki sumber daya tertentu untuk dapat melakukan perhitungan aritmatika, perbandingan, periksa kondisi logis, dll.

Pilihan

Algoritma harus memiliki cara tertentu untuk dapat memilih antara dua atau lebih kemungkinan tindakan, berdasarkan data awal, pada entri pengguna dan/atau dalam hasil yang dihitung.

Pengulangan

Algoritma harus memiliki cara tertentu untuk dapat mengulangi satu set instruksi, baik dengan beberapa kali atau sampai beberapa kondisi logis terpenuhi.

Hasil atau Laporan Output

Algoritma harus memiliki sumber daya tertentu untuk memberi tahu pengguna hasil yang telah dihitung, atau untuk dapat meminta data pengguna tambahan.

Jenis algoritma

Algoritma rekursif

Algoritma ini sangat menarik, karena disebut dirinya dengan nilai yang berbeda sebagai parameter input, yang diperoleh setelah menyelesaikan parameter input sebelumnya. Yaitu, itu menyebut dirinya berulang kali sampai masalah terpecahkan.

Masalah seperti menara hanoi atau pencarian mendalam untuk grafik dapat dengan mudah diselesaikan dengan menggunakan jenis algoritma ini.

Algoritma Membagi dan Menaklukkan

Dalam algoritma ini, dibagi menjadi dua bagian. Pada bagian pertama, masalah yang dimaksud dibagi menjadi sub-masalah yang lebih kecil dari jenis yang sama. Demikian juga, pada bagian kedua sub-masalah mereka diselesaikan, kemudian menggabungkan kedua belah pihak untuk menghasilkan solusi akhir dari masalah tersebut.

Misalnya, dengan algoritma ini Anda dapat melakukan penahbisan untuk kombinasi dan penahbisan cepat.

Algoritma Pemrograman Dinamis

Algoritma ini berhasil mengingat hasil eksekusi sebelumnya dan menggunakannya untuk menemukan hasil baru. Artinya, mereka memecahkan masalah kompleks yang membaginya menjadi beberapa sub-masalah sederhana dan kemudian memecahkan masing-masing, kemudian menyimpannya untuk menggunakannya nanti.

Dapat melayani Anda: metode kuantitatif

Algoritma gaya kotor

Algoritma ini secara membabi buta mencari semua solusi yang mungkin untuk menemukan satu atau lebih solusi yang dapat menyelesaikan fungsi. Anda dapat memikirkan brute force seolah -olah semua kombinasi angka yang mungkin digunakan untuk membuka brankas.

Algoritma mundur

Algoritma ini memecahkan masalah secara rekursif dan mencoba memecahkan masalah memecahkan setiap bagian dari itu. Jika solusinya gagal, itu dihilangkan dan kembali untuk menemukan solusi lain.

Yaitu, algoritma ini memecahkan sub-masalah, tetapi jika ini tidak menyelesaikan masalah total, itu membatalkan langkah terakhir dan dimulai lagi untuk menemukan solusi untuk masalah tersebut.

Contoh algoritma

Algoritma rekursif

Pseudocode ini menemukan faktorial angka "n" non -negatif, menggunakan algoritma rekursif:

Algoritma Pemrograman Dinamis

Urutan Fibonacci adalah contoh yang baik dari algoritma pemrograman dinamis. Itu dapat dilihat dalam pseudocode ini:

- Ya (n = 0 atau n = 1), fibonacci (n) = 0

- Jika tidak, fibonacci (n) = fibonacci (n-1) + fibonacci (n-2)

Algoritma mundur

Masalah catur dari 8 ratu adalah contoh yang baik. Masalah ini menetapkan bahwa di papan catur ada 8 ratu dan harus ditempatkan sedemikian rupa sehingga tidak ada ratu yang berada dalam posisi untuk menyerang yang lain setelah diorganisir.

Berbagai contoh

- Algoritma Diagnosis HIV.

Algoritma Diagnosis HIV. Sumber: Immunopedia/CC BY-S (https: // CreativeCommons.Org/lisensi/by-sa/4.0)

- Mesin pencari internet menggunakan algoritma yang dipatenkan untuk menunjukkan hasil yang paling relevan dari indeks pencarian mereka untuk konsultasi tertentu.

- Resep, seperti persamaan matematika, adalah algoritma.

- Email tahu ke mana harus mengirim terima kasih kepada algoritma.

- Konten yang terlihat di jejaring sosial datang melalui algoritma. Faktanya, semua yang dilakukan di web adalah produk algoritma.

- Video game adalah narasi algoritmik.

- Aplikasi telepon pintar hanyalah algoritma.

- Sebagian besar transaksi keuangan dilakukan melalui algoritma.

- Setiap kali kolom dipesan pada spreadsheet, algoritma mengintervensi.

Referensi

  1. Lee Rainie (2017). Tergantung kode: pro dan kontra dari usia algoritma. Pusat Penelitian Pew. Diambil dari: Pewresarch.org.
  2. Istilah Teknologi (2020). Algoritma. Diambil dari: techterms.com.
  3. Britannica (2020). Algoritma. Diambil dari: Britannica.com.
  4. Educba (2020). Jenis algoritma. Diambil dari: Educba.com.
  5. How To Geek (2016). Apa itu algoritma komputer, dan bagaimana cara kerjanya? Diambil dari: howtogek.com.
  6. Cara kerja barang (2020). Apa itu algoritma komputer? Diambil dari: komputer.Howstuffwork.com.