Rumah Keuangan Pribadi Berurusan dengan Algorithm Complexity - dummies

Berurusan dengan Algorithm Complexity - dummies

Video: Dealing with Difficult Developers 2024

Video: Dealing with Difficult Developers 2024
Anonim

Bagian Algoritma For Dummies Cheat Sheet

Anda sudah tahu bahwa algoritma itu rumit. Namun, Anda perlu tahu seberapa rumit sebuah algoritma karena yang lebih rumit adalah, semakin lama waktu yang dibutuhkan untuk berlari. Tabel berikut membantu Anda memahami berbagai tingkat kompleksitas yang disajikan dalam urutan waktu berjalan (dari yang tercepat sampai yang paling lambat).

Kompleksitas Deskripsi
Kompleksitas konstan O (1) Menyediakan waktu eksekusi yang tidak sesuai, tidak peduli berapa banyak masukan yang Anda berikan. Setiap input membutuhkan satu unit waktu eksekusi.
Kompleks logaritma O (log n) Jumlah operasi tumbuh pada tingkat yang lebih lambat dari pada input, membuat algoritma kurang efisien dengan input kecil dan lebih efisien dengan yang lebih besar. Algoritma khas kelas ini adalah pencarian biner.
Kompleksitas linier O (n) Operasi tumbuh dengan input dalam rasio 1: 1. Algoritma yang khas adalah iterasi, saat Anda memindai input sekali dan menerapkan operasi ke setiap elemennya.
Kompleksitas linier O (n log n) Kompleksitas adalah perpaduan antara kompleksitas logaritmik dan linier. Ini adalah tipikal dari beberapa algoritma cerdas yang digunakan untuk memesan data, seperti Mergesortsort, Heapsort, dan Quicksort.
Kompleksitas kuadrat O (n 2 ) Operasi tumbuh sebagai kuadrat dari jumlah input. Bila Anda memiliki satu iterasi di dalam iterasi lain (disebut nested iterasi dalam ilmu komputer), Anda memiliki kompleksitas kuadrat. Misalnya, Anda memiliki daftar nama dan, untuk menemukan yang paling mirip, Anda membandingkan setiap nama dengan semua nama lainnya. Beberapa algoritma pemesanan yang kurang efisien menyajikan kompleksitas seperti itu: sort bubble, sort sort selection, dan insertion sort. Tingkat kompleksitas ini berarti bahwa algoritma Anda dapat berjalan berjam-jam atau bahkan berhari-hari sebelum mencapai solusi.
Kompleksitas kubus O (n 3 ) Operasi tumbuh lebih cepat daripada kompleksitas kuadrat karena sekarang Anda memiliki beberapa iterasi bersarang. Ketika sebuah algoritma memiliki urutan kompleksitas ini dan Anda perlu mengolah sejumlah data sederhana (100, 000 elemen), algoritme Anda dapat berjalan selama bertahun-tahun. Bila Anda memiliki sejumlah operasi yang merupakan kekuatan input, adalah umum untuk merujuk ke algoritma seperti berjalan pada waktu polinomial.
Kompleksitas eksponensial O (2 n ) Algoritma membutuhkan dua kali jumlah operasi sebelumnya untuk setiap elemen baru ditambahkan. Ketika sebuah algoritma memiliki kompleksitas ini, masalah kecil mungkin akan terjadi selamanya. Banyak algoritma yang melakukan pencarian menyeluruh memiliki kompleksitas eksponensial. Namun, contoh klasik untuk tingkat kerumitan ini adalah perhitungan angka Fibonacci.Kompleksitas Faktorial O (n!)
Algoritma ini menyajikan mimpi buruk yang nyata karena sejumlah besar kemungkinan kombinasi antara elemen. Bayangkan saja: Jika input Anda adalah 100 objek, dan operasi di komputer Anda membutuhkan 10 -6 detik (kecepatan yang masuk akal untuk setiap komputer saat ini), Anda memerlukan sekitar 10 140 tahun untuk menyelesaikan tugas dengan sukses (jumlah waktu yang tidak mungkin karena usia alam semesta diperkirakan berusia 10 14 tahun). Masalah kompleksitas faktorial yang terkenal adalah masalah salesman keliling, di mana seorang salesman harus menemukan rute terpendek untuk mengunjungi banyak kota dan kembali ke kota awal.
Berurusan dengan Algorithm Complexity - dummies

Pilihan Editor

Perancang Minigame Minigame - dummies

Perancang Minigame Minigame - dummies

Sebelum menulis semua kode untuk membuat Minecraft Minigame, Anda perlu merancang permainan Anda. The Gameplay Loop adalah proses sederhana yang bisa Anda ikuti untuk memastikan permainan Anda menyenangkan, menantang, dan lengkap. The Gameplay Loop memiliki empat bagian: Start: Buat adegan dasar. Tujuan: Menambahkan cara untuk menang dan ...

Menciptakan Efek Air dan Es di Minecraft - dummies

Menciptakan Efek Air dan Es di Minecraft - dummies

Satu hal yang rapi tentang Minecraft adalah bahwa beberapa fisika realistis sedang dimainkan dalam permainan. Misalnya, jika Anda memiliki air dan Anda memasukkan es ke dalamnya, itu akan membeku! Oke, mungkin di dunia nyata, menambahkan es tidak membuat air membeku, tapi memang membuatnya lebih dingin. Anda dapat melihat ini ...

Mendapatkan Minecraft Experience Points - dummies

Mendapatkan Minecraft Experience Points - dummies

Di Minecraft, experience points, XP untuk jangka pendek, dikumpulkan dari bola pengalaman bercahaya. Sebagai pemain mengumpulkan cukup bola dan meningkatkan tingkat pengalaman mereka, mereka akan dapat menggunakan tabel dan landasan yang mempesona untuk meningkatkan kemampuan banyak item seperti senjata, baju besi, dan peralatan. Jadi, bagaimana Anda bisa cepat mendapatkan ini ...

Pilihan Editor

Bagaimana Mendidik dengan Infografis Informasi Dokumentual - dummies

Bagaimana Mendidik dengan Infografis Informasi Dokumentual - dummies

Infomasi editorial sama dengan artikel berita karena tujuan utamanya adalah untuk mengirimkan informasi. Di bawah payung grafis editorial, ada beberapa tipe yang berbeda, dengan keseimbangan bias dan objektivitas yang berbeda. Berikut adalah beberapa melihat: Badai salju menghantam kota Anda. Koran lokal menciptakan grafik yang menunjukkan hujan salju ...

Bagaimana Mengimpor Sketsa ke Ilustrator untuk Menciptakan Infografis - dummies

Bagaimana Mengimpor Sketsa ke Ilustrator untuk Menciptakan Infografis - dummies

Bahkan di dunia kabel ini, seniman masih suka sketsa Kabar baik! Sketsa kasar Anda dapat dengan mudah digunakan dalam draf infografis Anda. Anda dapat memindai sketsa atau mengambil gambar sketsa Anda dengan telepon Anda dan mengirim e-mail ke komputer Anda sendiri. Mereka tidak perlu diwarnai, cukup jelas bagi Anda untuk ...

Bagaimana cara memasukkan ilustrasi di Infografis Anda - jeleknya

Bagaimana cara memasukkan ilustrasi di Infografis Anda - jeleknya

Infografis yang baik (jelas) harus mencakup seni yang bagus. Ilustrasi mempromosikan alur cerita, menentukan elemen secara visual, dan mencerahkan halaman yang mungkin diisi dengan tipe abu-abu. Ilustrasi bisa berupa gambar fisik, semacam bagan atau grafik, atau bahkan garis waktu. Kehidupan sehari-hari Anda dipenuhi dengan contoh bagaimana ilustrasi ...

Pilihan Editor

GED Contoh Pertanyaan: Penalaran Melalui Bahasa Seni Membaca Informasi Teknis - dummies

GED Contoh Pertanyaan: Penalaran Melalui Bahasa Seni Membaca Informasi Teknis - dummies

Tentang Penalaran Melalui bagian Seni Bahasa GED, Anda mungkin diminta untuk menjawab pertanyaan tentang bagian teknis. Ini bisa termasuk petunjuk cara melengkapi, seperti berikut. Pertanyaan dalam artikel ini mengacu pada kutipan berikut dari Russell Hart's Photography For Dummies, 2nd Edition (Wiley). Apa Rahasia Untuk ...

GED Contoh Pertanyaan: Pertanyaan singkat tentang Ilmu Pengetahuan - dummies

GED Contoh Pertanyaan: Pertanyaan singkat tentang Ilmu Pengetahuan - dummies

Di beberapa titik selama bagian Ilmu Pengetahuan dari Tes GEE, Anda akan diminta untuk membuat jawaban singkat. Anda akan diberi sebuah bagian dan mengajukan pertanyaan yang perlu Anda tanggapi. Buat respons Anda jelas dan ringkas. Bagian Jawaban Jawaban Semua orang mengenal keju cheddar. Orang-orang meletakkan ...

GED Contoh Pertanyaan: Ilmu Sosial dan Media - dummies

GED Contoh Pertanyaan: Ilmu Sosial dan Media - dummies

Di bagian Ilmu Sosial GED, Anda mungkin diminta untuk menjawab pertanyaan tentang berbagai bentuk media, termasuk siaran berita. Lihatlah contoh berikut di bawah ini. Pertanyaan dalam artikel ini mengacu pada siaran berita berikut. Berita Lingkungan Dunia Selamat malam dan selamat datang di World Environmental News. Cerita kami ini ...