nin anlamı nedir


Yanıtlar:


33

Haklısın. teriminin , bir değişkendeki fonksiyonlar için tanımlanan klasik big O Notasyonu'nu hafifçe kötüye kullandığına dikkat edin . Bununla birlikte, çoklu değişkenler için doğal bir uzantı vardır .O(n+m)

Basitçe beri, konuşma sen olmadığını anlıyoruz ve , asimptotik üst sınırlara eşittir.

12(m+n)max{m,n}m+n2max{m,n},
O(n+m)O(max{m,n})

Öte yandan, , farklıdır , çünkü ayarlarsanız , alırsınız.O(n+m)O(min{n,m})n=2m

O(2m+m)=O(2m)O(m)=O(min{2m,m}).

3
Özet olarak yazdıklarının dikkat çekici olduğunu düşünüyorum: "Birden fazla değişkende fonksiyonlar için büyük O notasyonu tanımlamanın, algoritma analizinde yaygın olarak kullanılan özellikleri ima edecek şekilde tanımlanmasının imkansız olduğunu düşünüyorum. Ayrıca, ortak tanımları da gösteriyoruz. big-O notasyonu içerisindeki fonksiyonların kesinlikle azaltılmaması ile sınırlı olsa bile, bu özellikleri ima etmeyin.
Raphael

4
Bir izlem benim Yukarıdaki yorum gibi, son makale algoritma analizi için O-gösterimde genel bir tanım K. Rutanen tarafından (2015) yapar dahil genel setleri için anlamlı O-notasyonu nasıl tanımlanacağını göstermektedir . N2
Raphael

25

İster inanın ister inanmayın, (benim deneyimime göre) birçok algoritma, insanların aslında büyük O notasyonunun resmi olarak ne anlama geldiğini düşünmediğini düşünüyor ve sorulduğunda birkaç farklı cevap alabilirsiniz. Bazı konular, Rodney R. Howell tarafından Çok Değişkenli Asimptotik Gösterim Üzerine yazısında tartışılmıştır .

İlginçtir ki, giriş algoritmalarının çoğu derslerin tek bir değişkenle büyük O gösterimi hakkında çok resmi olmak için çok fazla zaman harcadıkları ve sonraki haftalar, çeşitli algoritmalar için gösterimi rahat bir şekilde, ne olduğunu tartışmaksızın mutlu bir şekilde kullanmaktadırlar. gösterim aslında demektir.


Cevabımdaki link, bu soruya gerçekten güzel bir şekilde yaklaşan Howell makalesine atıfta bulunuyor.
A.Schulz,

1
@ A.Schulz: Gerçekten, cevabımı size aynı anda yazıyordum.
Kristoffer Arnsfelt Hansen

1
Landau şartlarına dikkat etmenin bir savunucusuyum, bu yüzden katılıyorum, ama bu iyi bir cevap için çok fazla rant içeriyor.
Raphael

4
@Raphael: Cevap bir rant anlamına gelmez, ama belki daha kesin bir şekilde ifade edilebilirdi. Mesele şu ki, soru temelde, büyük O'nun birden fazla parametreli anlamı nedir? Cevap, algoritmalar topluluğunda ne olduğu konusunda fikir birliği ne olduğu, algoritmalar derslerinde ne öğretildiği, vb. Anlamına gelmesi gerektiğidir.
Kristoffer Arnsfelt Hansen
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.