Saya lebih suka definisi formal sesedikit mungkin dan matematika
Kompleksitas waktu suatu algoritme mengukur jumlah waktu yang dibutuhkan oleh algoritme untuk menjalankan fungsi ukuran input untuk masalah. Kompleksitas waktu suatu algoritme biasanya diekspresikan menggunakan notasi O besar, yang menekan konstanta perkalian dan suku orde rendah.
Saya lebih suka definisi formal sesedikit mungkin dan matematika
Apa cara paling ringkas dan efisien untuk mengetahui apakah array JavaScript berisi nilai? Ini adalah satu-satunya cara saya tahu untuk melakukannya: function contains(a, obj) { for (var i = 0; i < a.length; i++) { if (a[i] === obj) { return true; } } return false; } Apakah ada cara...
Saya belajar tentang waktu O Notasi Besar berjalan dan waktu diamortisasi. Saya memahami gagasan O (n) waktu linear, yang berarti bahwa ukuran input mempengaruhi pertumbuhan algoritma secara proporsional ... dan hal yang sama berlaku untuk, misalnya, waktu kuadrat O (n 2 ) dll. Bahkan algoritma ,...
Project Euler dan kontes pengkodean lainnya sering kali memiliki waktu maksimum untuk dijalankan atau orang-orang membanggakan seberapa cepat solusi khusus mereka berjalan. Dengan Python, terkadang pendekatannya agak kludgey - yaitu menambahkan kode waktu ke __main__. Apa cara yang baik untuk...
Pertanyaan Bagaimana menemukan kompleksitas waktu suatu algoritma? Apa yang telah saya lakukan sebelum memposting pertanyaan di SO? Saya telah melalui ini , ini dan banyak tautan lainnya Tetapi tidak ada tempat saya dapat menemukan penjelasan yang jelas dan langsung ke depan untuk bagaimana...
Mengingat bahwa string tidak dapat diubah dalam. NET, saya bertanya-tanya mengapa mereka dirancang sedemikian rupa sehingga string.Substring()membutuhkan waktu O ( substring.Length), bukan O(1)? yaitu apa pengorbanan, jika
Saya mengerti notasi Big-O, tapi saya tidak tahu bagaimana cara menghitungnya untuk banyak fungsi. Secara khusus, saya telah mencoba untuk mencari kompleksitas komputasi dari versi naif dari deret Fibonacci: int Fibonacci(int n) { if (n <= 1) return n; else return Fibonacci(n - 1) +...
Apa perbedaan antara Big-O notasi O(n)dan kecil-O notasi
Apakah ada kasus di mana Anda lebih suka O(log n)kompleksitas O(1)waktu daripada kompleksitas waktu? Atau O(n)untuk O(log n)? Apakah Anda punya
Sumber daya yang saya temukan pada kompleksitas waktu tidak jelas kapan boleh mengabaikan istilah dalam persamaan kompleksitas waktu, khususnya dengan contoh non-polinomial. Jelas bagi saya bahwa diberi sesuatu dari bentuk n 2 + n + 1, dua istilah terakhir tidak signifikan. Secara khusus,...
Saya telah melihat beberapa klaim menarik tentang hashmaps SO re Java dan O(1)waktu pencarian mereka . Adakah yang bisa menjelaskan mengapa demikian? Kecuali jika hashmaps ini sangat berbeda dari algoritma hashing yang saya beli, pasti selalu ada dataset yang berisi collision. Dalam hal ini,...
Saya mendengar seseorang mengatakan bahwa karena pencarian biner membagi dua input yang diperlukan untuk pencarian maka itu adalah log (n) algoritma. Karena saya bukan dari latar belakang matematika saya tidak dapat menghubungkannya. Adakah yang bisa menjelaskannya dengan sedikit lebih detail?...
Algoritma dasar untuk BFS: set start vertex to visited load it into queue while queue not empty for each edge incident to vertex if its not visited load into queue mark vertex Jadi saya akan berpikir kompleksitas waktu adalah: v1 + (incident edges) + v2 + (incident edges) + .... + vn...
Misalkan kita diberi array n bilangan bulat yang mewakili harga saham dalam satu hari. Kita ingin mencari pair (buyDay, sellDay) , dengan buyDay ≤ sellDay , sehingga jika kita membeli saham pada buyDay dan menjualnya pada sellDay , kita akan memaksimalkan keuntungan kita. Jelas ada solusi O (n 2 )...
Apa beberapa algoritma yang kita gunakan setiap hari yang memiliki kompleksitas O (1), O (n log n) dan O (log
Pengetahuan saya tentang big-O terbatas, dan ketika istilah log muncul dalam persamaan, hal itu membuat saya semakin marah. Bisakah seseorang menjelaskan kepada saya secara sederhana apa itu O(log n)algoritma? Dari manakah asal logaritma? Ini secara khusus muncul ketika saya mencoba...
Array dalam JavaScript sangat mudah dimodifikasi dengan menambah dan menghapus item. Ini agak menutupi fakta bahwa kebanyakan array bahasa berukuran tetap, dan membutuhkan operasi kompleks untuk mengubah ukurannya. Tampaknya JavaScript mempermudah penulisan kode array yang berperforma buruk. Ini...
Pertanyaan sebelumnya ini membahas beberapa faktor yang mungkin menyebabkan algoritme memiliki kompleksitas O (log n). Apa yang menyebabkan algoritme memiliki kompleksitas waktu O (log log
Apa itu waktu pseudopolinomial ? Apa bedanya dengan waktu polinomial? Beberapa algoritma yang berjalan dalam waktu pseudopolynomial memiliki runtime seperti O (nW) (untuk 0/1 Knapsack Problem ) atau O (√n) (untuk divisi percobaan ); mengapa itu tidak dihitung sebagai waktu
Saya mengalami kesulitan dalam menentukan kompleksitas waktu dari algoritma penyebut umum terbesar Euclid. Algoritma dalam pseudo-code ini adalah: function gcd(a, b) while b ≠ 0 t := b b := a mod b a := t return a Sepertinya tergantung pada a dan b . Pemikiran saya adalah bahwa...