سؤال

أود أن أعرف ما إذا كان $ o (n \ log n) $ هو تسريع الأسس الأسية عبر $ o (n ^ 2) $ ؟

هل كانت مفيدة؟

المحلول

$ o (n \ log n) $ هو متعدد الحدود تسريع عبر $ o (n ^ 2) $ ، على وجه الخصوص تقريبا التربيعي تسريع. $ o (n \ log n) $ كبير o من $ o (n ^ k $ ) لجميع $ k> 1 دولار . لذلك هو وقت التشغيل هو بين الخطي وأي PowerFunction الذي يكون منه أكثر صديدا من 1.

دع $ f (n)= n \ log n $ . ارفعها إلى قوة بعض القيمة أقل قليلا من 2 لتقريب وقت التشغيل الأصلي. نستنتج $ f (n) \ impally n ^ {2- \ varepsilon} (\ log n) ^ {2- \ varepsilon} $ وفي $ O (n ^ 2) $ . إذا كنا مربع $ f (n) $ ، لدينا $ n ^ 2 (\ log n) ^ 2 دولار ، أقل كفاءة قليلا من الأصلي $ n ^ 2 $ ، وبالتالي هو أساسا تسريع تربيعي.

بدلا من ذلك، $ o (\ log n ^ 2)= o (\ log n) $ هو تسريع الأساس حول $ O (n ^ 2) $ . إذا $ g (n)= 2 \ log (n) $ ، ثم $ e ^ {g (n)}= n ^ 2 $ .

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى cs.stackexchange
scroll top