ساختمان داده ها مرتب سازی درجی

Slides:



Advertisements
Similar presentations
زبان برنامه نویسی پرولوگ
Advertisements

معاونت درمان امور مامایی اردیبهشت 90. برای ثبت اطلاعات در برنامه نرم افزاری نظام مراقبت مرگ پریناتال ابتدا لازم است برنامه نرم افزار info-path وپرنیان.
فاکتورهای مهم در ایجاد یک مقاله علمی
Definition. قانون بیز P(b|a) = P(a|b)P(b)/P(a) P(b|a) = P(a|b)P(b)/P(a) این قانون برای استنتاج آماری استفاده می شود. این قانون برای استنتاج آماری استفاده.
Decision Tree.
LINEAR CONTROL SYSTEMS Ali Karimpour Assistant Professor Ferdowsi University of Mashhad.
فایل پردازی در C File based Programming in C. انواع فایل متنی –سرعت بالا –حجم کمتر –امکان دسترسی تصادفی –حفظ امنیت داده ها دودویی (باینری) –امکان باز.
Lesson four Grade three
Database Laboratory: Session #4 Akram Shokri. DB-Lab 2 Lab Activity You must already created all tables You have to have inserted proper data in tables.
به نام خدا برنامه سازی سمت سرور (php)
مظفر بگ محمدی دانشگاه ایلام Generics. کدهای عمومی 2 یکی از اهداف OOP ایجاد قابلیت نوشتن برنامه های عمومی با قابلیت استفاده ی مجدد است. کدهای چندریخت تا.
Data Types Modifiers Base data type Size Sign signed int 2 B unsigned float 4 B short double 8 B long char 1 B.
ساختمان داده‌ها پیمایش گراف. مرور °مشکل: چگونه تمام نودهای گراف را مشاهده کنیم؟ °جستجوی اول عمق دنبال کردن مسیرهای بین راسها. °جستجوی اول سطح دیدن تمام.
Arrangements of Lines C omputational Geometry By Samaneh shafi naderi
Grammar lesson 4 Grade 9 Wh-Question
آشنايي با سيستم اعداد.
Adapted by Dr. Adel Ammar
Number Systems Give qualifications of instructors:
Give qualifications of instructors: DAP
[c.
تهیه و تنظیم: فاطمه قاسمی دانشگاه صنعتی شریف – پاییز 86
فصل 4- محاسبات زمانی در شبکه AoA
ویژگی های DHCP جلوگیری از Conflict سرعت بخشیدن به کارها مدیریت متمرکز
بنام خدا زبان برنامه نویسی C (21814( Lecture 12 Selected Topics
SY800 router mode [AD-14-TB ].
ساختمان داده ها جداول درهم سازی
ساختمان داده‌ها الگوریتمهای کوتاهترین مسیر
روش حریصانه در طراحی الگوریتم
Odd-even merge sort مرتب سازی.
چگونه بفهمیم آیا ژورنالی ISI است؟ ایمپکت فاکتور دارد یا خیر؟
دانشگاه علوم پزشکی شهید بهشتی
فصل دوم جبر بول.
Route configuration for 5400W ADSL Router
حافظه ی نهان دانشگاه ایلام.
Natural language Understanding James Allen
SSO Single Sign-on Systems
آشنایی با پایگاه داده mysql
آموزش کرک کردن نرم افزار ACTIVE HDL
Tree Sort.
ساختمان داده‌ها پیمایش درخت دودویی
درخت جستجوی دودویی درخت جستجوي دودويي: درخت دودويي صفر نود يا بيشتر
سميرا قانوني زهرا معدني
Intro تمام موجودات باید قبل از تقسیم DNA خود را همانندسازی کنند
دینامیک سیستمهای قدرت مدرس: دکتر مهدی بانژاد
Bucket sort اكرم منوچهري زهرا منوچهري
ساختمان داده ها پشته ها Give qualifications of instructors: DAP
راهنمای استفاده از ابزار Mailings در Ms Word
Sequential Circuits: Latches
ساختمان داده ها لیستهای پیوندی
پشته و صف پیوندی Give qualifications of instructors: DAP
بسم الله الرحمن الرحیم هرس درخت تصمیم Dr.vahidipour Zahra bayat
به نام خدا Koha برنامه.
فصل ششم مدارهای ترتیبی.
Introduction to Electrical and Computer Engineering II
ساختمان داده‌ها درختان و درختان دودویی
Uniprocessor Scheduling
توزیع میانگین نمونه سعید موسوی.
مراحل پیش رو : 1- الگوریتم عقبگرد برای مسئله کوله پشتی صفر و یک
نسبت جرم فرمولی ”جرم اتمی و فرمول تجربی
عنوان مقاله نویسنده اول1، نویسنده دوم2، نویسنده سوم3، نویسنده چهارم4
برنامه ریزی خطی پیشرفته (21715( Advanced Linear Programming Lecture 7
پشته و صف پیوندی Give qualifications of instructors: DAP
مباني كامپيوتر و برنامه سازي Basics of Computer and Programming
مباني كامپيوتر و برنامه سازي Basics of Computer and Programming
ساختمان داده ها گرافها.
Give qualifications of instructors: DAP
NAND and XOR Implementation
Circuit Analysis Procedure by Dr. M
Dept of Electronics Engineering
CS 151 Digital Systems Design Lecture 1 Course Overview
Presentation transcript:

ساختمان داده ها مرتب سازی درجی ساختمان داده ها مرتب سازی درجی Give qualifications of instructors: DAP teaching computer architecture at Berkeley since 1977 Co-athor of textbook used in class Best known for being one of pioneers of RISC currently author of article on future of microprocessors in SciAm Sept 1995 RY took 152 as student, TAed 152,instructor in 152 undergrad and grad work at Berkeley joined NextGen to design fact 80x86 microprocessors one of architects of UltraSPARC fastest SPARC mper shipping this Fall

مشکل: چگونه داده های یک لیست را مرتب کنیم. مرور مشکل: چگونه داده های یک لیست را مرتب کنیم. مرتب سازی درجی یکی از روشهای ساده است. مرتب سازی درجی به درد مجموعه های بزرگ نمی خورد. 20 8 5 10 7 credential: bring a computer die photo wafer : This can be an hidden slide. I just want to use this to do my own planning. I have rearranged Culler’s lecture slides slightly and add more slides. This covers everything he covers in his first lecture (and more) but may We will save the fun part, “ Levels of Organization,” at the end (so student can stay awake): I will show the internal stricture of the SS10/20. Notes to Patterson: You may want to edit the slides in your section or add extra slides to taylor your needs.

مرتب سازی درجی ایده ی اصلی: با دو عنصر اول لیست شروع کنید، اگر نامرتب هستند آنها را جابجا کنید. عنصر سوم را در محل مناسب خود قرار دهید. مثلاْ اگر قرار است لیست صعودی باشد، و عنصر سوم از عنصر اول کوچکتر است آنرا قبل از عنصر اول قرار دهید. برای عناصر بعدی همین کار را تکرار کنید.

قرار دادن عنصر i ام در محل مناسب: شبه کد مرتب سازی درجی قرار دادن عنصر i ام در محل مناسب: temp = data[i] shift those elements data[j] which greater than temp to right by one position place temp in its proper position 20 8 5 10 7 temp i = 1, first iteration ---

مرتب سازی درجی (ادامه) 8 20 5 10 7 temp i = 2, second iteration ---

مرتب سازی درجی (ادامه) 5 8 20 10 7 temp i = 3, third iteration ---

مرتب سازی درجی (ادامه) 5 8 10 20 7 temp i = 4, fourth iteration ---

مرتب سازی درجی InsertionSort(int[] array) { int temp, i, j; for( i=1; i<array.length; i++ ) { temp = array[i]; // assuming array[0] … array[i-1] are sorted for( j=i; j>0 && temp<array[j-1]; j--) array[j] = array[j-1]; // move temp in the correct position array[j] = temp; }

یک مثال دیگر

مرتب سازی درجی عنصر اول همیشه در مکان ۰ ام قرار می گیرد. ممکن است در صورت اضافه کردن عناصر جدید آنرا حرکت دهیم.

Insertion Sort

پیچیدگی مرتب سازی درجی زمان اجرای الگوریتم به دفعات اجرای حلقه ی for داخلی وابسته است: در بهترین حالت حلقه ی داخلی یکبار اجرا می شود. تعداد دفعات اجرای حلقه داخلی نیز n-1 بار است. پس:

پیچیدگی مرتب سازی درجی در بدترین حالت لیست به صورت معکوس مرتب شده است. لذا تمام عناصر را باید جابجا کنیم.

درج در یک لیست مرتب void insert(int[] B, int key, int end) { // find the insertion point int j = 0; while (j < end && B[j] < key) j++; // shift to the right for (int k = end, k <= j; k--) A[k+1] = A[k]; // insert key A[j] = key; }