কুইক সর্ট

কুইক সর্ট একটি সুপরিচিত সর্টিং অ্যালগোরিদম। টোনি হোর ১৯৬০ সালে এটি উদ্ভাবন করেন। এই সর্টিং অ্যালগোরিদমটি n সংখ্যক জিনিসকে সর্ট করতে বা নির্দিষ্ট ক্রমে সাজাতে গড়ে Θ(n log n) সংখ্যক তুলনা(comparisons) করে থাকে। তবে ওয়ার্স্ট কেসে অরথাত সব থেকে প্রতিকুল অবস্থায় অ্যালগোরিদমটি O(n2) সংখ্যক তুলনা করে থাকে। সাধারণভাবে, কুইক সর্ট অন্যান্য Θ(n log n) সর্টিং অ্যালগোরিদমগুলির চেয়ে উল্লেখযোগ্যপরিমাণ দ্রুততর, কারণ এর ভেতরের লুপটি বেশির ভাগ নির্মাণ-কৌশলে সুবিধাজনকভাবে বাস্তবায়ন করা যায় এবং বাস্তব জীবনে ব্যবহৃত বেশির ভাগ উপাত্তের জন্য নকশাটি এমনভাবে বেছে নেয়া যায় যাতে দ্বি-ঘাত সময় এড়ানো সম্ভবপর হয়। কুইক সর্ট একরকমের তুলনাকেন্দ্রিক সর্ট। সুবিধাজনক বাস্তবায়নে এটা আর সুস্থিত সর্ট থাকে না।

কুইক সর্ট
কিছু এলোমেলো সংখ্যার তালিকায় কুইক সর্টের কার্যক্রম দেখানো হচ্ছে। আনুভূমিক রেখাগুলি পিভট মান নির্দেশ করছে।

অ্যালগোরিদম

কুইক সর্ট 
কুইক সর্ট এর অ্যানিমেশন

কুইক সর্ট বিভক্ত কর এবং জয় কর কৌশলে সর্ট করে থাকে, এজন্য একটা বড় তালিকাকে এটি দুটি ক্ষুদ্রতর তালিকায় বিভক্ত করে।

ধাপগুলি হলোঃ

  1. তালিকা থেকে পিভট নামক একটি সদস্য বাছাই কর।
  2. তালিকাটিকে পুনরায় নির্দিষ্ট ক্রমে এমনভাবে সাজাও যাতে পিভট থেকে ছোট তালিকাস্থ সকল সদস্য পিভটের আগে থাকে আর পিভটের চেয়ে বড় সকল সদস্য থাকে পিভটের পরে(পিভটের সমমানের সদস্য আগে বা পরে যেকোন জায়গায় থাকতে পারে)। এই পার্টিশনকরণের শেষে পিভট তার চূড়ান্ত অবস্থানে (সঠিকভাবে ক্রমক্রীত তালিকায় তার যেখানে থাকার কথা সেখানে) থাকবে। এটাকে পার্টিশন ক্রিয়া বলা হয়ে থাকে।
  3. পুনরাবৃত্তভাবে পিভট অপেক্ষা ক্ষুদ্রতর মানবিশিষ্ট সদস্যদের উপতালিকা এবং বৃহত্তর মানবিশিষ্ট সদস্যদের উপতালিকাকে সর্ট কর।

পুনরাবৃত্তির বেস কেইস বা ভিত্তি অবস্থা হচ্ছে শূন্য বা একক দৈর্ঘ্যের তালিকা যারা আপনা থেকেই সর্টকৃত থাকে। অ্যালগোরিদমটির ইনপুট যদি সসীম একটি তালিকা হয়ে থাকে তাহলে এটি সসীম সময়েই তালিকাটিকে সর্ট করতে পারবে, কারণ প্রতি ইটারেশনে এটি কমপক্ষে একটা সদস্যকে তার চূড়ান্ত অবস্থানে স্থাপন করতে সমর্থ হয়।

সহজ স্যুডোকোডে প্রকাশ করলে অ্যালগরিদমটি হবেঃ

 function quicksort(q)      var list less, pivotList, greater      if length(q) ≤ 1            return q        select a pivot value pivot from q      for each x in q except the pivot element          if x < pivot then add x to less          if x ≥ pivot then add x to greater      add pivot to pivotList      return concatenate(quicksort(less), pivotList, quicksort(greater)) 

উল্লেখ্য যে, কোন একটা সদস্যকে পর্যবেক্ষণে অন্যান্য সদস্যের সাথে এর তুলনাকেই কেবল ব্যবহার করা হয়েছে বলে কুইক সর্ট একধরনের তুলনাকেন্দ্রিক সর্ট।

ফাংশনাল ভাষাগুলোতে সাধারণত অ্যালগোরিদমগুলো হুবহু লেখা যায়, যেমন হ্যাস্কেলে অ্যালগোরিদমটি হলো:

   quickSort [] = []    quickSort (x : xs) = quickSort lower ++ equal ++ quickSort higher                              where lower = filter (< x) xs                                    equal = x : (filter (== x) xs)                                    higher = filter (> x) xs 

অন্তর্গত পার্টিশনযুক্ত সংস্করণ

পারফরমেন্সের পূর্ণ বিবরণ

উৎকৃষ্টতর পিভট ব্যবহার

পার্টিশনের বিষয়াবলী

অন্যান্য মিতব্যয়ীতা

ছোট তালিকার জন্যে ভিন্ন অ্যালগোরিদম ব্যবহার

ওয়ার্স্ট-কেইস স্মৃতি-ব্যবহার কমানো

সমান্তরাল-করণ

"ভাগ করে জয় কর " এই পদ্ধতির জন্য মার্জ শর্ট এর মত কুইক শর্টকেও সমান্তরাল-করণ করা যায় |

প্রতিদ্বন্দী সর্টিং অ্যালগোরিদম

গাণিতিক বিশ্লষণ

এলোমেলোকৃত কুইক সর্টের প্রত্যাশিত জটিলতা

গড় জটিলতা

স্থানিক জটিলতা

বাছাইকরণের সাথে সম্পর্ক

বহিঃসংযোগ

উৎসপঞ্জী

পাদটীকা

Tags:

কুইক সর্ট অ্যালগোরিদমকুইক সর্ট পারফরমেন্সের পূর্ণ বিবরণকুইক সর্ট উৎকৃষ্টতর পিভট ব্যবহারকুইক সর্ট প্রতিদ্বন্দী সর্টিং অ্যালগোরিদমকুইক সর্ট গাণিতিক বিশ্লষণকুইক সর্ট বাছাইকরণের সাথে সম্পর্ককুইক সর্ট বহিঃসংযোগকুইক সর্ট উৎসপঞ্জীকুইক সর্ট পাদটীকাকুইক সর্টBig O notationটোনি হোরসর্টিং অ্যালগোরিদম

🔥 Trending searches on Wiki বাংলা:

মুহাম্মাদের সন্তানগণলোকসভা কেন্দ্রের তালিকানিরোভারতের রাজ্য ও কেন্দ্রশাসিত অঞ্চলসমূহএশিয়াজনসংখ্যা অনুযায়ী সার্বভৌম রাষ্ট্র ও নির্ভরশীল অঞ্চলসমূহের তালিকাসুকান্ত ভট্টাচার্যসচিব (বাংলাদেশ)শীর্ষে নারী (যৌনাসন)কামরুল হাসানগোলাপচাকমানিজামিয়াডিপজলরাজশাহী বিশ্ববিদ্যালয়হস্তমৈথুনমাদারীপুর জেলাশাহরুখ খানঊনসত্তরের গণঅভ্যুত্থানমহিবুল হাসান চৌধুরী নওফেলসত্যজিৎ রায়সাইবার অপরাধআরসি কোলাসূরা ফাতিহাওয়ালটন গ্রুপবীর্যবাংলাদেশের মেডিকেল কলেজসমূহের তালিকাস্ক্যাবিসমানিক বন্দ্যোপাধ্যায়ঈশ্বরচন্দ্র বিদ্যাসাগরবনলতা সেন (কবিতা)দুর্গাপূজাদারাজহজ্জবিজ্ঞানজি২০বাংলাদেশে জলবায়ু পরিবর্তনের প্রভাবসাহারা মরুভূমিবাংলাদেশী জাতীয় পরিচয় পত্রপ্রেমালুপেপসিফিলিস্তিনবিশেষণঅভিস্রবণঅভিষেক বন্দ্যোপাধ্যায়বদরের যুদ্ধনামাজপ্রোফেসর শঙ্কুবিভিন্ন ধর্ম ও বিশ্বাসের তালিকাঋতুঢাকা বিশ্ববিদ্যালয়টাইফয়েড জ্বরউপজেলা পরিষদমিজানুর রহমান আজহারীসার্বিয়াআকবররক্তের গ্রুপইউক্রেনক্লিওপেট্রাকবিতাশেরেবাংলা কৃষি বিশ্ববিদ্যালয়কালো জাদুপ্রথম মালিক শাহবাংলাদেশ পল্লী বিদ্যুতায়ন বোর্ডদাজ্জালদ্বাদশ জাতীয় সংসদ নির্বাচনবেফাকুল মাদারিসিল আরাবিয়া বাংলাদেশশিব নারায়ণ দাসইউএস-বাংলা এয়ারলাইন্সগোপালগঞ্জ জেলামেঘনা বিভাগ১৮৫৭ সিপাহি বিদ্রোহইবনে বতুতাইস্তেখারার নামাজতুলসীপ্রাকৃতিক পরিবেশআমাশয়হারুনুর রশিদতাজমহল🡆 More