صفحه اصلی

صفحه شخصی مسعود اقدسی‌فام
الگوریتمستان - آموخته‌های من از دنیای برنامه‌نویسی و طراحی الگوریتم
عبارت مورد نظر:

     
متوسط بازدید روزانه:  267  بازدید

تعداد امتیازهای ثبت شده:  455

میانگین امتیازهای ثبت شده:  4.28 از 5.00
برنامه‌نویسی ++C برنامه‌نویسی ++C

آموزش زبان برنامه‌نویسی ++C
طراحی الگوریتم‌ها طراحی الگوریتم‌ها

بحث‌هایی از طراحی الگوریتم
ساختمان داده‌ها ساختمان داده‌ها

آموزش مباحث ساختمان داده‌ها
مسابقات برنامه‌نویسی مسابقات برنامه‌نویسی

آمادگی مسابقات برنامه‌نویسی
محاسبات ریاضی محاسبات ریاضی

الگوریتم‌های محاسبات ریاضی
مرتب‌سازی مرتب‌سازی

روش‌های مرتب‌سازی داده‌ها
 

مرتب‌سازی هرمی (Heap Sort) یکی از روش‌های مشهور مرتب‌سازی داده‌ها است که بر اساس خصوصیات درخت heap (هیپ، هرم یا کپه)  و عملکرد آن پیاده‌سازی شده است.

بر اساس تعریف درخت heap، در یک max-heap (یا min-heap) بزرگترین (یا کوچکترین) مقدار بین داده‌ها همواره در ریشه درخت قرار دارد. یافتن بزرگترین (یا کوچکترین) عنصر بین عناصر، هزینه ثابت ( Ө( 1 دارد. با حذف این عنصر از درخت، بزرگترین (یا کوچکترین) عنصر بعدی مجددا در ریشه قرار می‌گیرد. به این ترتیب با حذف متوالی عناصر درخت heap و درج آنها در محل جدید، یک آرایه مرتب‌شده نزولی (یا صعودی) به دست خواهد آمد.

ادامه مطلب ...


الگوریتمستان بررسی مساله Simple Addition، از سوالات آمادگی مسابقات برنامه‌نویسی

الگوریتمستان معرفی متغیرهای مرجع در زبان برنامه‌نویسی ++C و آشنایی با مهمترین کاربردهای آنها

الگوریتمستان بحث در مورد ضرب زنجیره‌ای ماتریس‌ها و روش پیاده‌سازی الگوریتم پرانتزبندی بهینه آن با روش تقسیم و حل و روش برنامه‌نویسی پویا

الگوریتمستان بررسی روش‌های بسط لاپلاس، گاوس و فرمول تحویل، برای محاسبه دترمینان ماتریس مربعی، و پیچیدگی زمانی آنها

الگوریتمستان آشنایی با روش مرتب‌سازی هرمی (Heap Sort)

الگوریتمستان آشنایی با روش Divide and Conquer (تقسیم و حل / تقسیم و غلبه) و کاربردهای آن در مرتب‌سازی، جستجو و حل مسائل الگوریتمی دیگر

الگوریتمستان آشنایی با حلقه‌های تکرار در زبان برنامه‌نویسی ++C و دستورات کنترلی مورد استفاده در آن
الگوریتمستان آشنایی با آرایه پویای یک بعدی و کاربردهای آن در زبان برنامه‌نویسی ++C
الگوریتمستان آشنایی با قالب‌ها به عنوان یکی از امکانات متمایز ++C از C
الگوریتمستان آشنایی با کلاس‌های حافظه و کاربرد آنها در زبان ++C
الگوریتمستان بحث در مورد ضرب زنجیره‌ای ماتریس‌ها و روش پیاده‌سازی الگوریتم پرانتزبندی بهینه آن با روش تقسیم و حل و روش برنامه‌نویسی پویا
الگوریتمستان آشنایی با درخت جستجوی دودویی (Binary Search Tree) و عملیات جستجو و درج و حذف گره