বিগ-ও এবং লিটল-ও স্বীকৃতির মধ্যে পার্থক্য


উত্তর:


442

f ∈ O (g) মূলত বলে

জন্য অন্তত একটি একটি ধ্রুবক পছন্দমত > 0, আপনি একটি ধ্রুবক জানতে পারেন একটি যেমন যে বৈষম্য 0 একটি <= চ (x) এর <= কেজি (x) এর সব x এর জন্য ঝুলিতে>।

নোট করুন যে ও (জি) হ'ল সমস্ত ফাংশনের সেট যা এই শর্তটি ধারণ করে।

f ∈ o (ছ) মূলত বলে

জন্য প্রত্যেক একটি ধ্রুবক পছন্দমত > 0, আপনি একটি ধ্রুবক জানতে পারেন একটি যেমন যে বৈষম্য 0 একটি <= চ (x) <কেজি (x) এর সব x এর জন্য ঝুলিতে>।

আবার, নোট করুন যে ও (জি) একটি সেট।

বিগ-ও-তে, কেবলমাত্র আপনাকে একটি নির্দিষ্ট গুণক কে পাওয়া দরকার যার জন্য অসমতা কিছুটা ন্যূনতম এক্স ছাড়িয়ে যায় ।

লিটল-ও-তে অবশ্যই এটি হওয়া উচিত যে ন্যূনতম x থাকবে যার পরে অসম্পূর্ণতা যতই ছোট না কেন আপনি কে বানাবেন যতক্ষণ না এটি নেতিবাচক বা শূন্য নয়।

এগুলি উভয়ই উপরের সীমা বর্ণনা করে, যদিও কিছুটা স্বজ্ঞাতভাবে, লিটল-ও শক্তিশালী বক্তব্য। F ∈ o (g) এর চেয়ে f ∈ o (g) এর চেয়ে f এবং g এর বৃদ্ধির হারের মধ্যে অনেক বড় ব্যবধান রয়েছে।

বৈষম্যের একটি উদাহরণ হ'ল f ∈ O (f) সত্য, তবে f ∈ o (f) মিথ্যা। অতএব, বিগ-ও "এফ g ও (জি) হিসাবে পড়তে পারে যার অর্থ চ এর অ্যাসিমেটোটিক বৃদ্ধি জি এর চেয়ে দ্রুত নয়", "ফ ∈ ও (জি) এর অর্থ এফ এর অ্যাসিম্পটোটিক বৃদ্ধি জি এর চেয়ে কঠোরভাবে ধীর"। এটা <=বনাম মত <

আরও সুনির্দিষ্টভাবে, যদি g (x) এর মান f (x) এর মানটির ধ্রুবক একাধিক হয়, তবে f ∈ O (g) সত্য। এ কারণেই আপনি বিগ-ও স্বরলিপি দিয়ে কাজ করার সময় ধ্রুবকগুলি ড্রপ করতে পারেন।

তবে, f ∈ o (g) সত্য হওয়ার জন্য, তারপরে g অবশ্যই তার সূত্রে এক্স এর একটি উচ্চতর শক্তি অন্তর্ভুক্ত করতে হবে এবং তাই x (x) এবং g (x) এর মধ্যে আপেক্ষিক বিভাজনটি অবশ্যই আরও বড় হতে হবে কারণ x বড় হওয়ার সাথে সাথে।

বিশুদ্ধরূপে গণিতের উদাহরণগুলি ব্যবহার করার জন্য (অ্যালগোরিদমের উল্লেখ না করে):

নিম্নলিখিতগুলি বিগ-ও-এর জন্য সত্য, তবে আপনি যদি লিটল-ও ব্যবহার করেন তবে তা সত্য হবে না:

  • x² ∈ O (x²)
  • x² ∈ O (x² + x)
  • x² ∈ O (200 * x²)

নীচে লিটল-ও এর জন্য সত্য:

  • x² ∈ o (x³)
  • x² ∈ o (x!)
  • ln (x) ∈ o (x)

মনে রাখবেন যে যদি f ∈ o (g) হয় তবে এটি f ∈ O (g) বোঝায়। উদাহরণস্বরূপ x∈ ∈ o (x³) সুতরাং এটিও সত্য যে x² ∈ O (x³), (আবার ওকে <=ও হিসাবে হিসাবে ভাবুন <)


146
হ্যাঁ - পার্থক্যটি হ'ল দুটি ফাংশন asympototically একই হতে পারে কিনা। স্বজ্ঞাতভাবে আমি বিগ-ও অর্থটি ভাবতে পছন্দ করি "এর চেয়ে দ্রুত গজায় না" (অর্থাত্ একই হারে বা ধীর গতিতে বেড়ে যায়) এবং লিটল-ও অর্থ "এর চেয়ে কঠোরভাবে ধীর গতিতে বৃদ্ধি পায়"।
ফিল

12
এটি উইকিপিডিয়ায় অনুলিপি করবেন? এটি এখানে যা আরও ভাল।
মেঘসুরফিন

1
@ এসএ হ্যাঁ এটি একটি জটিল বিষয় যেখানে আমি "এক্সের উচ্চতর ক্ষমতা" সম্পর্কে যে সরল নিয়ম দিয়েছি তা স্পষ্টতই প্রযোজ্য নয়। তবে আপনি নীচে স্ট্রিল্যাঙ্কের উত্তরে প্রদত্ত আরও কঠোর সীমা সংজ্ঞাটি যদি দেখেন তবে আপনি যা জানতে চান তা হল লিমিটি এন-> ইনফ (2 ^ n / 3 ^ n) = 0. যেহেতু (2 ^ n / 3 ^ n) = (2/3) ^ n এবং যে কোনও 0 <= x <1, লিমি n-> ইনফ (x ^ n) = 0 এর জন্য, এটি সত্য যে 2 ^ n = o (3 ^ n)।
টাইলার ম্যাকহেনরি

1
"লিটল-ও-তে সাবধান থাকুন, অবশ্যই এমন একটি ন্যূনতম এক্স থাকতে হবে যার পরে অসমতার বিষয়টি আপনি যতটা ছোট করেন না যতক্ষণ না এটি নেতিবাচক বা শূন্য নয়।" এটা না "প্রত্যেক জন্য aআছে kযে: ..." এটা "প্রত্যেক জন্য kআছে একটি aযে: ..."
GA1

1
"লিটল-ও-তে, এটি অবশ্যই একটি ন্যূনতম এক্স থাকতে হবে যার পরে অসমতা ধরে রাখুন যতক্ষণ আপনি কে ছোট করেন না যতক্ষণ না এটি নেতিবাচক বা শূন্য নয়।" না, এটি ভুল।
ফিলিপো কস্তা

196

যেমন বিগ-হে অল্প-O হয় হয় <। বিগ-ও একটি অন্তর্ভুক্ত উপরের বাউন্ড, যখন লিটল-ও একটি কঠোর উপরের আবদ্ধ।

উদাহরণস্বরূপ, ফাংশনটি f(n) = 3nহ'ল:

  • ইন O(n²), o(n²)এবংO(n)
  • না O(lg n), o(lg n)অথবাo(n)

একত্রে, সংখ্যাটি 1হ'ল:

  • ≤ 2, < 2এবং≤ 1
  • না ≤ 0, < 0বা< 1

সাধারণ ধারণাটি দেখানো এখানে একটি টেবিল রয়েছে:

বড় হে টেবিল

(দ্রষ্টব্য: সারণীটি একটি ভাল গাইড তবে এর সীমাটি সংজ্ঞাটি সাধারণ সীমাটির পরিবর্তে উচ্চতর সীমা অনুসারে হওয়া উচিত example উদাহরণস্বরূপ, 3 + (n mod 2) চিরকাল 3 থেকে 4 এর মধ্যে O(1)দোলায়। এ lim sup: ৪)

আমি কীভাবে বিগ-ও স্বরলিপিটি অ্যাসিপটোটিক তুলনাতে রূপান্তরিত করে তা মুখস্থ করার প্রস্তাব দিই। তুলনাগুলি মনে রাখা সহজ, তবে কম নমনীয় কারণ আপনি এন ও (1) = পি এর মতো জিনিস বলতে পারবেন না ।


আমার একটি প্রশ্ন আছে: লাইন 3 এবং 4 (সীমা সংজ্ঞা কলাম) এর মধ্যে পার্থক্য কী? আপনি দয়া করে আমাকে এমন একটি উদাহরণ দেখাতে পারেন যেখানে 4 টি (লিম> 0) রাখে, তবে 3 নয়?
মাস্কেড ম্যান

3
ওহ, আমি এটি বুঝতে পেরেছি। বিগ ওমেগা লিমিটেডের জন্য হয়> 0, বিগ ওহ হ'ল লিমি জন্য <অনন্ত, বিগ থেটা হয় যখন উভয় শর্ত থাকে, যার অর্থ 0 <লি << অনন্ত inity
মাস্কেড ম্যান

F ∈ Ω (g) এর জন্য, অনন্তের সীমাটি> = 1 এর মূল্যায়ন করা উচিত নয়? একইভাবে f ∈ O (g) এর জন্য, 1 = <সি <∞?
ব্যবহারকারী 2963623

1
@ ব্যবহারকারী 2963623 না, কারণ 0 ও 1 এর মধ্যে মান সহ 0 এর উপরে সীমাবদ্ধ মানগুলি "একই অ্যাসিপটোটিক জটিলতা তবে বিভিন্ন ধ্রুবক কারণের সাথে মিল"। যদি আপনি 1 এর নীচে মানগুলি বাদ দেন, আপনার অ্যাসিপটোটিক-জটিলতার জায়গার পরিবর্তে ধ্রুবক-ফ্যাক্টর স্পেসে একটি কাট অফ রয়েছে।
ক্রেগ গিডনি

1
@ বুদব আপনি সেটটি দিয়ে কাফেরী অপারেশনটি সম্প্রচারিত করেছেন। এটা আলগা স্বরলিপি।
ক্রেগ গিডনি

45

আমি দেখতে পেলাম যে যখন আমি ধারণাগতভাবে কিছু বুঝতে পারি না, কেন কেউ এক্স ব্যবহার করবে সে সম্পর্কে চিন্তা করা এক্স বোঝার জন্য সহায়ক ((আপনি এটি চেষ্টা করেন নি বলে মনে হয় না, আমি কেবল মঞ্চটি স্থির করছি))

[আপনারা জানেন যে জিনিসগুলি] অ্যালগরিদমগুলিকে শ্রেণিবদ্ধ করার একটি সাধারণ উপায় রানটাইম দ্বারা এবং একটি অ্যালগরিদমের বিগ-ওহ জটিলতার উদ্ধৃতি দিয়ে আপনি একটি "ভাল" - যার মধ্যে "ক্ষুদ্রতম" ফাংশন রয়েছে তার একটি সুন্দর ভাল অনুমান পেতে পারেন হে! এমনকি বাস্তব বিশ্বে ও (এন) ও-এন (এন) এর চেয়ে "ভাল", অতি-বৃহত্তর ধ্রুবক এবং এর মতো নির্বোধ বিষয়গুলি বাদ দিয়ে [[/ স্টাফগুলি আপনি জানেন]

আসুন আমরা ও (এন) এ চলে এমন কিছু অ্যালগরিদম আছে বলে রাখি। খুব ভাল, তাই না? তবে আসুন আমরা আপনাকে (আপনি উজ্জ্বল ব্যক্তি, আপনি) একটি অ্যালগরিদম নিয়ে আসেন যা হে ( এনলগলগলগএন ) এ চলে। হ্যাঁ! এটি দ্রুত! আপনি যখন আপনার থিসিসটি লিখছেন তখন আপনি বার বার নিরীহভাবে লেখার অনুভব করবেন। সুতরাং আপনি এটি একবার লিখেছেন, এবং আপনি বলতে পারেন "এই গবেষণাপত্রে, আমি প্রমাণিত করেছি যে পূর্ববর্তী সময় হে (এন) এর গণনাযোগ্য অ্যালগরিদম এক্স আসলে ও (এন) তে গণনাযোগ্য।"

সুতরাং, সকলেই জানেন যে আপনার অ্যালগরিদম আরও দ্রুত --- কতটা অস্পষ্ট, তবে তারা এটির দ্রুত জানেন know তাত্ত্বিকভাবে. :)

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.