স্ট্যাক এবং হিপের মধ্যে পার্থক্য

Anonim

স্ট্যাক বনাম হ্যাপ

স্ট্যাক একটি তালিকাভুক্ত তালিকা যা তালিকা আইটেমের সন্নিবেশ এবং মুছে ফেলার একমাত্র সমাপ্তি ঘটতে পারে শীর্ষ। এই কারণে, স্ট্যাককে একটি লাস্ট ইন ফার্স্ট আউট (LIFO) ডেটা স্ট্রাক্ট হিসাবে বিবেচনা করা হয়। হিপ একটি বিশেষ তথ্য কাঠামো যা গাছ উপর ভিত্তি করে এবং এটি একটি বিশেষ সম্পত্তি হিপ সম্পত্তি বলা হয় সন্তুষ্ট। এছাড়াও, একটি গাদা একটি সম্পূর্ণ গাছ, যার মানে গাছের পাতা মধ্যে কোন ফাঁক আছে আমি। ঙ। একটি সম্পূর্ণ গাছের মধ্যে প্রতিটি স্তরের বৃক্ষের একটি নতুন স্তর যোগ করার আগে এবং একটি প্রদত্ত স্তরের নোডগুলি বাম থেকে ডানে ভরা হয়।

স্ট্যাক কি?

যেমন আগে উল্লেখ করা হয়েছে, স্ট্যাকটি একটি ডেটা স্ট্রাকচার যা উপাদানগুলিকে যোগ করা হয় এবং উপরের দিকে নামমাত্র একটি প্রান্ত থেকে সরানো হয়। স্ট্যাকগুলি শুধুমাত্র দুটি মৌলিক অপারেশনগুলিকে কেবলমাত্র ধাক্কা এবং পপ নামে ডাকা দেয়। ধাক্কা অপারেশন স্ট্যাকের শীর্ষে একটি নতুন উপাদান যোগ করে। পপ অপারেশন স্ট্যাকের উপরে থেকে একটি উপাদান সরিয়ে দেয়। স্ট্যাক ইতিমধ্যে পূর্ণ হলে, একটি ধাক্কা অপারেশন সঞ্চালিত হয়, এটি একটি স্ট্যাক ওভারফ্লো হিসাবে বিবেচনা করা হয়। যদি একটি পপ অপারেশন ইতিমধ্যে খালি স্ট্যাকে সঞ্চালিত হয়, এটি একটি স্ট্যাক অধীন হিসাবে বিবেচনা করা হয়। একটি স্ট্যাকের উপর সঞ্চালিত হতে পারে এমন ছোট সংখ্যক অপারেশনগুলির কারণে এটি একটি বিধিনিষেধযুক্ত ডেটা গঠন হিসাবে বিবেচিত হয়। উপরন্তু, ধাক্কা এবং পপ অপারেশনগুলিকে সংজ্ঞায়িত করা হয়েছে সেই অনুযায়ী, এটা স্পষ্ট যে স্ট্যাকের সাথে যোগ করা সর্বশেষ উপাদানটি স্ট্যাকের বাইরে প্রথম যায়। অতএব স্ট্যাককে একটি LIFO ডেটা কাঠামো হিসাবে বিবেচনা করা হয়।

--২ ->

হিপ কি?

আগে উল্লিখিত হিসাবে, গাদা একটি সম্পূর্ণ গাছ যে গাদা সম্পত্তি সন্তুষ্ট হয় হিপ প্রোপার্টি বলে যে যদি y হল x- এর একটি শিশু নোড, তাহলে নোডের মধ্যে সংরক্ষিত মানটি নোড y (i। Value value (x) ≥ মান (y)) এ সংরক্ষিত মানের সমান বা সমান হওয়া উচিত। এই সম্পত্তিটি সর্বশ্রেষ্ঠ মান সঙ্গে নোড সবসময় রুট এ স্থাপন করা হবে যে বোঝা। এই সম্পত্তি ব্যবহার করে নির্মিত একটি হ্যাপ সর্বাধিক-হ্যাপ বলা হয়। এই বিপরীতটি উল্লিখিত হিপ সম্পত্তি অন্য প্রকারের আছে। (i। e মান (x) ≤ মান (y))। এটি বোঝায় যে ক্ষুদ্রতম মানের সাথে নোডটি সর্বদা root এ স্থাপন করা হবে, এইভাবে একটি মিনি-হ্যাপ বলা হয়। ন্যূনতম (ন্যূনতম হ্যাপস) বা সর্বাধিক (সর্বাধিক হ্যাপসিতে), ন্যূনতম (ন্যূন-হ্যাপসগুলিতে) বা সর্বোচ্চ (সর্বোচ্চ-হ্যাপস) মুছে ফেলার সাথে সাথে সর্বাধিক (সর্বাধিক হিপস) বা হ্রাস (কম হ্যাপস) কী, ইত্যাদি।

স্ট্যাক এবং হ্যাপের মধ্যে পার্থক্য কি?

স্ট্যাক এবং হ্যাপস মধ্যে প্রধান পার্থক্য হচ্ছে যে স্ট্যাক একটি রৈখিক ডাটা স্ট্রাকচার, হ্যাপ একটি অরৈখিক ডাটা স্ট্রাকচার। স্ট্যাক LIFO সম্পত্তি অনুসরণ করে একটি আদেশ তালিকা, যখন গাদা একটি সম্পূর্ণ গাছ যে হিপ সম্পত্তি অনুসরণ করে।উপরন্তু, স্ট্যাকটি একটি বিধিনিষেধযুক্ত ডেটা স্ট্রাকচার যা ধাক্কা এবং পপ হিসাবে সীমিত সংখ্যক অপারেশনগুলিকে সমর্থন করে, যখন হ্যাপটি একটি বিস্তৃত অপারেশন সমর্থন করে যেমন ন্যূনতম বা সর্বাধিক মোড এবং অপসারণ, কী কী এবং মার্জ বৃদ্ধি বা হ্রাস