ساختمان داده ها

  • ساختمان داده در سی شارپ

    ساختمان داده ها در C#:<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />   این مطلب، آغاز یک سری شش قسمتی از مطالب مهم و کلیدی درباره ساختمان داده و کاربر آن در توسعه و طراحی نرم افزار است. در قسمت اول، مختصری درباره ساختمان داده ها، تعریف ساختمان داده، آنالیز کارآیی یک ساختمان داده و بررسی اهمیت این آنالیز صحبت خواهیم نمود. در این بخش همچنین درباره دو ساختمان داده بسیار مهم و رایج در .Net Framework یعنی آرایه ها و لیست ها صحبت خواهیم کرد.   قسمت اول : مقدمه ای بر ساختمان داده  مطالب مورد بحث در این قسمت بشرح زیر می باشند :   -         مقدمه -         آنالیز کارآیی یک ساختمان داده -         ساختمان داده خطی، همگون و بسیار متداول : آرایه (Array) -         ایجاد ساختمان داده های کارآ، قابل استفاده مجدد و Type-Safe -         لیست (List) : ساختمان داده ای همگون -         نتیجه و جمه بندی   مقدمه در طول این مطلب، با چندین ساختمان داده موجود در .Net Framework Base Class و همچنین ساختمان داده هایی که توسط کاربر ایجاد می شوند، آشنا خواهید شد. اگر با مفهوم ساختمان داده آشنایی ندارید به تعریف زیر توجه نمایید :   تعریف : ساختمان داده، کلاسی است که جهت سازماندهی داده ها مورد استفاده قرار می گیرد و از عملیات مختلف قابل اجرا بر روی این داده ها، پشتیبانی می نماید.   معمول ترین و آشنا ترین ساختمان داده، آرایه است که شامل مجموعه ای از داده ها است که پشت سر هم قرار گرفته اند و از طریق یک اندیس مشخص قابل دسترسی هستند.   قبل از شروع این قسمت، مطالب مورد بررسی در مجموعه شش قسمتی مربوط به ساختمان داده را مرور می کنیم تا هدف نهایی از این سری مطالب برای شما مشخص گردد.   در قسمت اول، نگاهی بر اهمیت ساختمان داده ها و چگونگی تاثیر آنها بر کارآیی یک الگوریتم خواهیم کرد. برای تعیین تاثیر کارآیی یک ساختمان داده بر روی یک الگوریتم، لازم است تا کلیه عملیات موجود در ساختمان داده به دفت مورد بررسی قرار گیرند. در ابتدا تمرکز خود را بر روی دو ساختمان داده آرایه و لیست جمع می کنیم، چراکه با این دوساختمان داده از قبل آشنایی داشته و می توانیم راحت تر به آنالیز انها بپردازیم. برای آنالیز کارآیی آنها، به بررسی عملیات موجود در هر یک از آنها و کارآیی هر یک از این عملیات خواهیم پرداخت.   در قسمت دوم ، به بررسی صف (Queue) و پشته (Stack) خواهیم پرداخت. همانند لیست ها، صف و پشته نیز مجموعه ای از داده ها هستند و این دو ساختمان داده در .Net Framework Base Class Library وجود دارند. بر خلاف لیست، که اعضای آن به هر ترتیبی قابل دسترسی هستند، دسترسی به اعضای صف و پشته تنها از طریق ترتیبی خاص قابل دسترسی است. ...



  • ساختمان داده ها

    دانشجویانی که با استاد جمالی حاجیانی درس ساختمان داده ها دارند می توانند فایل های زیر را دانلود کنند: کتاب ساختمان داده ها و الگوریتم ها (مولفین مهندس جعفر تنها و مهندس سید ناصر آیت) (pdf) اینجافایل ارایه ساختمان داده ها و الگوریتم ها اینجافایل ارایه ساختمان داده ها به زبان C اینجانمونه سوال اینجامطالب ارئه شده در جلسات:جلسه اول - فصل اول: روش های تحلیل الگوریتم (چهارم اسفند) اینجاجلسه دوم - ادامه فصل اول و فصل دوم: آرايه ها (یازدهم اسفند) اینجاجلسه سوم - فصل دوم: الگوريتم هاي مرتب سازي (هجدهم اسفند) اینجابیست و پنجم اسفند به دلیل جشن چهارشنبه سوری جلسه برگزار نمی شود.هفدهم فروردین کلاس تشکیل نشد.جلسه چهارم - کل مطالب ارائه شده در ترم قبل (بیست و چهارم فروردین) اینجاجلسه پنجم - الگوریتم مربع جادویی - الگوریتم Stack (سی و یکم فروردین) اینجابرنامه هاي نوشته شده در #C (پانزدهم ارديبهشت) اينجا (بيست و يكم ارديبهشت) اينجا پيش وندي-ميانوندي-پسوندي (چهارم خرداد) اينجانمونه سوال امتحاني دو ترم قبل اينجافايل ورد كل ساختمان اينجاجزوه ترم قبل و فايل برنامه هاي نوشته شده: قسمت اول اينجا قسمت دوم اينجا----------------------------------------------------------------------------قسمت هاي حذف شده از امتحان: كدهاي مرتب سازي - درخت نخ كشي - گراف - درخت Heap - تابع زماني (قسمت آلفا - تتا - امگا مياد) - درخت عمومي و جنگل.قسمت هاي مهم: كدگذاري هافمن - درخت (حذف از درخت - اضلفه كردن به درخت) - پيمايش ميانوندي و پيش وندي و پس وندي - ليست پيوندي.

  • اینم جزوه ساختمان داده ها

    اینم جزوه ساختمان داده ها

    C++ Video Training/ دانلود فایل کمک آموزشی درس ساختمان داده ها ( به صورت اسلاید )sakhteman_dade_www.aghazeh.com.pdf-------------------------------------------------------------------------------------------------------------------------دانلود جزوه ساختمان داده دانشگاه صنعتی شریف ساختمان داده‌ها از جمله بنیادی‌ترین مباحث مورد نیاز جهت یادگیری و درک بسیاری از مفاهیم عمده در علوم رایانه است. درس ساختمان داده ها نیز به تبع آن یکی از اصلی ترین دروس رشته کامپیوتر و فناوری اطلاعات محسوب می گردد. در این درس مفاهیم زیر بررسی می شوند: آرایه (Array)صف (Queue)پشته (Stack)لیست پیوندی (Linked list)گراف (Graph)درخت (Tree)تسلط بر این درس علاوه بر اینکه یکی از نیازهای ضروری دانشجویان رشته کامپیوتر و فناوری اطلاعات می باشد، می تواند تاثیر بسزایی در سرعت بخشیدن به روند برنامه نویسی یک برنامه نویس نیز داشته باشد. جزوه درسی ساختمان داده آقای دکتر محمد قدسی از دانشگاه صنعتی شریف به صورت تایپ شده در دو بخش خدمتتان ارائه می شود. پسورد: dlbook.net دانلود مستقیم------------------------------------------------------------------------------------------------------------------ساختمان داده‌ها Data Structure از جملهٔ بنیادی‌ترین مباحث مورد نیاز جهت یادگیری و درک بسیاری از مفاهیم عمده در علوم رایانه است. مدل منطقی یا ریاضی سامان‌دهی به داده‌ها به یک شکل خاص، ساختمان داده نام دارد. هر برنامه رایانه‌ای از الگوریتم و ساختمان داده‌ها تشکیل شده‌است.در اصطلاح کامپیوتری، ساختمان داده به روشهایی از ذخیره اطلاعات گفته می شود که برای استفاده بهینه از اطلاعات ذخیره شده اتخاذ می شود. غالباً انتخاب یک ساختمان داده موجب ایجاد الگوریتم های متناسب با آن خواهد شد که این دو در کنار هم موجب افزایش سرعت انجام یک وظیفه یا کاهش مصرف حافظه برای پردازش داده می شود. سنگ بنای ساختمان های داده انواع داده و اشاره گرهای گوناگون است. که با توجه به چگونگی تعریف کاربرد آنها در هر زبان برنامه نویسی پیاده سازی آنها متفاوت خواهد بود. موارد زیر از جمله مهمترین مباحث ساختمان داده‌ها هستند: آرایه (Array)صف (Queue)پشته (Stack)لیست پیوندی (Linked list)گراف (Graph)درخت (Tree)و… --------------------------------------------------------------------------------------------------مجموعه فیلم های آموزشی درس ساختمان داده دانشگاه برکلی توسط پروفسورPaul Hilfinger در ۳۹ قسمت تدریس میشود و مباحث زیر را در بر می‌‌گیرد: Lecture 1 – Developing a Simple Program Lecture 2 – More on Simple Programs Lecture 3 – Values and Containers Lecture 4 – Simple Pointer Manipulation Lecture 5 – Arrays and Objects Lecture 6 – Object-Oriented Mechanisms Lecture 7 – Interfaces and Abstract Classes Lecture 8 – Abstract Methods and Classes, Continued Lecture 9 – Examples of Interfaces Lecture 10 – Misc. Support for Abstraction; Exceptions Lecture 11 – Misc. Support ...

  • ساختمان داده ها صف اولویت دار

    ساختمان داده ها صف اولویت دار

    صف اولویت دار (Priority Queue) از جمله ساختمان داده های بسیار پرکاربرد است. در صف عادی از تکنیک FIFO - مخفف First In First Out - استفاده می شود. در این تکنیک مثل یک صف نانوایی داده ها به ترتیب ورود پشت سر هم در صف قرار می گیرند. بنابراین اولین داده ورودی اولین داده خروجی نیز خواهد بود. اما در صف اولویتی برای هر داده اولویتی - نه لزوما منحصر بفرد - مشخص می شود. صف اولویت را می توان به اورژانس یک بیمارستان تشبیه کرد که هر بیمار با شدت بیماری بیشتر اولویت بیشتری برای رسیدگی دارد. سیستم عامل کامپیوتر هم برای مدیریت پردازش ها از صفهای اولویت استفاده می کند. به عنوان مثال فرض کنید پردازش های زیر در انتظار اختصاص CPU به خود هستند:     صف انتظار CPU یک صف اولویت دار است. در نتیجه CPU در اولین فرصت ممکن ابتدا پردازش شماره 3 را انجام می دهد. سپس پردازش شماره 2 و . . . تذکر: روش های زمان بندی CPU جهت انجام پردازش های مختلف یکی از بحث های جذاب و در عین حال مهم مبحث سیستم عامل است. بررسی تمامی روشهای زمان بندی و مزایا و معایب آنها خارج از بحث فعلی ماست. برای پیاده سازی صف اولویتی عموما از آرایه استفاده می شود. ما در اینجا سه روش مختلف را شرح می دهیم.   1. پیاده سازی با استفاده از آرایه نامرتب: در این روش زمانی که داده ای وارد صف می شود همچون صف عادی در انتهای آن قرار می گیرد. به عنوان نمونه داده های مثال زمانبندی CPU به صورت زیر در آرایه قرار می گیرند:     توجه داشته باشید که هر عنصر آرایه ساختمانی مرکب از دو عنصر شماره پردازش و اولویت آن است. هر پردازش جدید به انتهای صف اضافه می شود، که از مرتبه ( O ( 1 است:     اما زمانی که قرار است پردازشی از آن خارج شود باید تک تک عناصر بررسی شوند، تا پردازشی با بیشترین اولویت انتخاب شود. این فرآیند از مرتبه ( O ( n است.   2. پیاده سازی با استفاده از آرایه مرتب: در این روش بر خلاف روش قبلی آرایه بر اساس اولویت ها مرتب شده است.     زمانی که داده ای وارد صف می شود، بر اساس اولویت خود در محل مناسب قرار می گیرد:     در این حالت پردازش با بیشترین اولویت همواره در انتهای صف قرار دارد و هزینه استخراج آن ( O ( 1 است. این مساله در مقایسه با آرایه نامرتب یک برتری است. اما در این روش هزینه درج ( O( n است که در مقایسه با روش قبلی اصلا بهینه نیست. در کل می توان گفت روش آرایه مرتب و نامرتب هم ارز یکدیگر بوده و از لحاظ عملکرد تفاوت چندانی با هم ندارند.   3. پیاده سازی با استفاده از آرایه نیمه مرتب (درخت heap): قبلا با درخت هیپ آشنا شده ایم. در این روش داده ها را بر اساس اولویت آنها در یک درخت min-heap وارد می کنیم:     اعداد داخل گرهها اولویت و اعداد خارجی شماره ...

  • ساختمان داده‌ها

    مجموعه حاضر به گونه‌اي طراحي و تدوين شده تا داوطلب بتواند در كوتاه‌ترين زمان ممكن به تمام نكات و مباحث كليدي مورد استفاده در سؤالات ساختمان داده تسلط پيدا كند.لازم به ذكر است طي چند سال گذشته ( 80 تا 88 ) موضوع هاي اصلي سوالات ساختمان داده براي رشته كامپيوتر به شرح زير بوده است. نرم افزار، سخت افزار:  درخت Heap، درخت جستجو، درخت، مرتبه زماني، B-tree IT :  مرتبه زماني، درخت، درخت جستجو، درخت Heap، گراف، Sort علوم كامپيوتر: همه‌ي مباحث                                                  در عين حال داوطلبان عزيز مي توانند براي مطالعه بيشتر به كتاب ساختمان داده‌ها نوشته هورويتز، ترجمه مهندس عليخانزاده مراجعه كنند. منبع:مقدمه جزوه ساختمان داده مهندس محسن طوراني از سري جزوات پارسه

  • برنامه آموزش درس ساختمان داده ها (صلواتی) - رشته کامپیوتر - نرم افزار آموزش ساختمان داده

    برنامه آموزش ساختمان داده ها پس از سه ماه تلاش، تهیه و آماده دانلود می باشد. این برنامه برای دانشجویان کامپیوتر که درس ساختمان داده را دارند بسیار مفید خواهد بود. مطالبی که در این نرم افزار آموزش داده شده است مفاهیم اصلی و بنیادی ساختمان داده می باشد. برای جزئیات بیشتر باید به کتاب درسی خود رجوع کنید. یک برنامه بسیار عالی برای یاد گیری مفاهیم پایه ایی درس ساختمان داده هااین برنامه دارای انیمیشن های متعددی برای فهم بیشتر مطالب این درس مهم است که دارای محیطی ساده و زیبا است. از امکانات و مباحت این نرم افزار میتوان به: 1-ماتریسها 2-پشته وصف 3-لیست های پیوندی 4-دارای آزمون مجازی برای سنجش دانشجو همراه با کارنامه5-انیمیشن های فراوان  6-سادگی کار با محیط این نرم افزاردر ضمن سوالات خود را در مورد ساختمان داده ها میتوانید در همین پست بپرسید توجه : دوستانی که برنامه رو دانلود کردند پنج صلوات هم بفرستند چون این یه دانلود صلواتی است اگه بیشتر هم شد مانعی ندارد فقط کمتر نشه ;)تذکر مهم : دوستانی که مایل به لینک دادن به این برنامه هستند فقط به همین (صفحه: http://saayeban.blogfa.com/post-45.aspx) لینک دهند در غیر این صورت شرعا راضی نیستم ( لینک مستقیم ندهید به این برنامه) >>>>>>> توجه جزوه درس ساختمان داده ها در اینجا قابل دسترس استفايل(exe) با حجم 4.9 مگابايتساختمان داده | آموزش ساختمان داده ها | آموزش درس ساختمان داده ها | جزوه درس ساختمان داده ها | نرم افزار آموزش ساختمان داده ها | كتاب ساختمان داده ها | جزوه آموزشي ساختمان داده