دانشکده:دروس:22822:14002:main
فهرست مندرجات
درس ساختمان دادهها نیمسال 14002
مدرس | ایمیل |
---|---|
دکتر زهرا رضوانی | zrezvani@ipm.ir |
توضیحات درس
زمان و محل برگزاری کلاس
کلاس درس در روز های یکشنبه و سهشنیه، از ساعت 10:30 الی 12:30 برگزار میشود. لینک کلاس مجازی درس متعاقباً اعلام میشود.
سرفصلها
- مقدمات و آشنایی
- آشنایی مقدماتی با روشهای حل مسئله
- روشهای تحلیل زمانی الگوریتمها
- معرفی نمادها
- تحلیل روابط بازگشتی: استقرا، درخت بازگشت، قضیه اصلی، جایگذاری
- تحلیل زمانی مرتبسازیهای معروف
- تحلیل سرشکن
- داده ساختارهای ابتدایی
- آرایه، لیست پیوندی، پشته، صف
- انواع درختها
- درختهایی دودویی
- درخت دودویی جستجو
- پیادهسازی درختها با استفاده از داده ساختارهای ابتدایی
- مرتبسازی درخت دودویی جستجو
- هرم بیشینه و کمینه (Min/Max Heap)
- پیادهسازی هرم با استفاده از داده ساختارهای ابتدایی
- مرتبسازی هرمی
- آشنایی با درخت Red-Black
- درهمسازی
- آشنایی با مقدمات درهمسازی
- جدول درهمسازی، آشنایی با مفهوم تصادم
- روشهای هندل کردن تصادم
- هش جهانی (Universal)، هش دوگانه، هش کامل
- مرتبسازی
- معرفی چند نوع مرتبسازی جدید
- تحلیل مرتبسازیهای گفته شده (درجا بودن، پایدار بودن)
- مرتبسازی سریع (Quick Sort)
- مرتبسازی خطی
- انتخاب k-امین عنصر آرایه (Select)
- گراف
- آشنایی با مقدمات گراف
- راس برشی، BFS، DFS
- درخت پوشای کمینه، الگوریتم پرایم، الگوریتم کراسکال
- کوتاهترین مسیر در گراف، Bellman Ford ،Dijkstra ،Floyd-Warshall
پیشنیاز
تسلط به یک زبان برنامه نویسی (Java یا C++)
ارزشیابی
- تمرین: 20 درصد
- 6 سری تمرین نظری و عملی
- تحویل تمرین ها فقط در زمان مقرر از طریق سامانه درس قابل قبول است.
- به هیچ وجه تمرین ها را مستقیما به ایمیل استاد درس یا دستیارهای آموزشی نفرستید.
- پروژه نهایی: 15 درصد
- یک پروژه عملی به صورت گروهی در انتهای ترم
- آزمونک: 15 درصد
- در انتهای هر مبحث یک آزمونک برگزار میشود.
- میانترم: 20 درصد
- پایانترم: 35 درصد
- امتحان پایانترم در روز 1401/04/12 و در ساعت 15:30 برگزار خواهد شد.
- حضور در کلاس و فعالیت کلاسی: 10± درصد
(مجموعاً 115 درصد)
دستیاران آموزشی
نام دستیاران | ایمیل |
---|---|
محمدعلی خدابندهلو | mohammad.khodabandelou@sharif.edu |
محمدعلی علما | rastegar123456789@gmail.com |
عرفان احمدی | ahmadier80@gmail.com |
علی شفیعی | shafieiali42@gmail.com |
مریم ابراهیمی | maryame797@gmail.com |
امیررضا خاجویی | amir.khaju@gmail.com |
رضا پیشکو | rezapishkoo17@gmail.com |
سینا قاسمینژاد | sina.ghaseminejad@yahoo.com |
منابع
T. Cormen, C. Leiserson, R. Riverst, and C. Stein. Introduction to Algorithms. 3rd Edition, MIT Press, 2011. (CLRS)
M.T.Goodrich and R.Tamassia. Data Structures and algorithms in Java.
M.T.Goodrich, R.Tamassia and D. M. Mount. Data Structures and algorithms in C++.
محمد قدسی، «دادهساختارهای و مبانی الگوریتمها»، چاپ چهارم، انتشارات فاطمی، ۱۳۹۳.
/opt/bitnami/dokuwiki/data/pages/دانشکده/دروس/22822/14002/main.txt · آخرین ویرایش: 2022/09/07 10:44 توسط 127.0.0.1