۱۳۸۸ دی ۵, شنبه
امتحان پايان ترم ساختمان داده
لازم به ذكر است كه سوالات امتحان پايان ترم ساختمان داده به گونهاي طراحي ميشود كه افرادي كه كتاب مرجع درس (ساختمانداده هورويتز) را به خوبي خوانده و فهميده باشند بتوانند نمره قابل قبولي از اين درس كسب كنند.
تقريبا هر سوال چند قسمت است كه بخش آخر آن تحليلي خواهد بود نه تمام آن.
مثلا اين ميتواند يك سوال باشد: درخت Heap چه درختي است؟ از آن چه استفادهاي ميشود؟ اگر دريك درخت heap دادههايي كه كمتر از نصف مقدار ريشه هستند در زيردرخت چپ و داده هايي كه بيشتر از نصف مقدار ريشه هستند در زيردرخت راست نگهداري شوند، اين درخت آيا مزيتي بر درخت heap خواهد داشت؟
۱۳۸۸ دی ۲, چهارشنبه
Triggers!
مقدمه اي بر Trigger ها:
بخش اول:
http://www.sqlteam.com/article/an-introduction-to-triggers-part-i
بخش دوم:
http://www.sqlteam.com/article/an-introduction-to-triggers-part-ii
۱۳۸۸ آذر ۳۰, دوشنبه
نمونه سوال ساختمان داده
سوالات انتخابي ليست پيوندي و درخت:
http://www.2shared.com/file/10126982/20a18d59/ds880930.html
پايين صفحه سمت راست در بخش
Save file to your PC: click here كليك كنيد. |
۱۳۸۸ آذر ۲۸, شنبه
پروژه پايگاه داده
پروژه نهايي پايگاه داده، همانطور كه سر كلاس عنوان شد يك سيستم فروشگاه است.
مثلا فروشگاه رفاه كه چندين شعبه دارد و اجناس بسيار متنوعي به فروش ميرسد. اين فروشگاه ميخواهد اطلاعات كالاهاي خود را نگهداري كند و در هنگام فروش اطلاعات فاكتور فروش را داشته باشد. در نهايت ميخواهد موجودي هر كالا را در انبار در هر لحظه داشته باشد.
يك برنامه بسيار ساده، فقط با يك فرم بنويسيد كه اطلاعات يك كالا يا فاكتور را اضافه كرد و نمايش دهد.
هدف از اين پروژه چگونگي طراحي database ميباشد. تمامي كنترلها را در در سطح database انجام دهيد.
از stored procedure ، trigger استفاده كنيد. تعريف constraintها مهم است.
تاريخ تحويل پروژه يك هفته پس از اتمام امتحانات خواهد بود.
تحويل به دو صورت ممكن است كه از نظر نمره كاملا يكسان هستند. تحويل حضوري و تحويل با ايميل و توضيح به صورت تلفني!!!! ساعت مشخصي جهت تماس تلفني در نظر گرفته شده و دانشجو به سوالات مطرح شده در مورد پروژه خود توضيح ميدهد.
نمره پروژه 1.5 نمره است.
نمره ساختمان داده
با توجه به اينكه درس ساختمان داده ماهيت اصلي آن تئوري است، نمره امتحان پايان ترم نقش بسيار زيادي در نمره نهايي خواهد داشت.
پروژه شماره 1 ساختمان داده
پياده سازي ADT ماتريس اسپارس با ليست پيوندي.
عمليات ايجاد ماتريس، جمع دو ماتريس و ترانهاده ماتريس از عمليات اين ADT هستند.
(به دليل زمان كم براي انجام پروژه عمل ضرب دو ماتريس نياز به انجام نيست)
زمان تحويل پروژه يك هفته پس از اتمام امتحانات خواهد بود.
به دليل محدوديتهاي آموزشي امكان تمديد اين مهلت وجود ندارد.
نمره اين پروژه 1 نمره است.
نمره پروژه دوم نيز كه در مورد درختها خواهد بود 1 نمره خواهد بود.
بديهي است كه نمره پروژه تنها براي دانشجوياني منظور ميگردد كه از امتحان پايان ترم بيش از نيمي از نمره را دريافت كرده باشند.
۱۳۸۸ آذر ۲۵, چهارشنبه
۱۳۸۸ آذر ۲۳, دوشنبه
سوالات كوئيز ساختمان داده
كوئيز پشته،صف، مرتبه زماني:
http://www.2shared.com/file/9973044/5aeb59df/ds880827.html
كوئيز مرتبسازي: http://www.2shared.com/file/10072088/437b944a/ds880921.html پايين صفحه سمت راست در بخش
|
۱۳۸۸ آذر ۲۱, شنبه
نمايشي از درخت دودويي!
پايين صفحه سمت راست در بخش
Save file to your PC: click here كليك كنيد. درخت بودن يك درخت دودويي نشان داده ميشود. |
۱۳۸۸ آذر ۲۰, جمعه
تمرين پايگاه داده گروه كارشناسي ناپيوسته
تمرينهاي http://elearningquchan.blogspot.com/2009/11/blog-post_22.html را كه با SQL حل كردهايد، اكنون با جبررابطهاي حل كنيد. تمرينها پنج شنبه تحويل گرفته خواهد شد.
۱۳۸۸ آذر ۱۴, شنبه
تاريخ كوئيزهاي ساختمان داده
بر اساس گزارشي كه آقاي گودرزي فرستادن تاريخ دو كوئيز آتي درس ساختمان داده به صورت زير خواهد بود:
كوئيز مرتب سازی: شنبه 88/9/21 ساعت 18-16
كوئيز لیست پیوندی: شنبه 88/9/28 ساعت 18-16
توجه كنيد كه كليه مطالبي كه تا قبل از آن تاريخ در مورد ليست پيوندي گفته شود در كوئيز خواهد بود.
۱۳۸۸ آذر ۱۳, جمعه
نمونه سوال ساختمان داده - بخش مرتبسازي
فعلا چند سوال از مبحث مرتب سازي ميگذارم. ممكن است كه بعدا سوالات جديدي به اين ليست اضافه شود.
- كدام يك از الگوريتمهاي مرتب سازي اگر داده ها در فايل باشند، بهتر عمل ميكنند؟ فرض ميشود كه حافظه اصلي خالي وجود ندارد يعني نميتوان هيچ آرايهاي در حافظه تعريف كرد، فقط ميتوانيد متغير تعريف كنيد و مرتب سازي بايد داخل فايل صورت گيرد.در واقع الگوريتمهاي مرتبسازي را بر اين اساس مرتب كنيد (كدام بسيار مناسب، كدام متوسط و كدام نامناسب است)
- فرض كنيد چندين كامپيوتر داريم كه ميتوانند به صورت مستقل با هم كار كنند (برنامه نويسي موازي) (محدوديتي در تعداد كامپيوترها وجود ندارد) (ميتوانيد فرض كنيد كه چندين نفر هستيد كه ميخواهيد ليست بسيار بزرگي را مرتب كنيد بدون اينكه ارتباط زيادي با هم داشته باشيد)، كدام يك از الگوريتمهاي مرتبسازي در اين مورد بهتر عمل ميكند؟ چرا؟ در واقع الگوريتمهاي مرتبسازي را بر اين اساس مرتب كنيد (كدام بسيار مناسب، كدام متوسط و كدام نامناسب است)
- اگر الگوريتمهاي مرتب سازي بخواهند براي يك ليست يك پيوندي بكار روند كدام بهتر عمل ميكنند؟ براي ليست دو پيوندي چطور؟ در واقع الگوريتمهاي مرتبسازي را بر اين اساس مرتب كنيد (كدام بسيار مناسب، كدام متوسط و كدام نامناسب است). چه ساختماندادهاي پيشنهاد ميكنيد كه عمل مرتبسازي در آن سريعتر از آرايه باشد؟ پاسخ خود را دقيقا شرح دهيد.
- كدام يك از روشهاي مرتبسازي ناپايدار هستند؟ جهت پايدار كردن هر يك از روشها چه تغييراتي بايد در الگوريتم آن داده شود؟ كاملا توضيح دهيد.
۱۳۸۸ آذر ۱۱, چهارشنبه
Stored Procedures
اين يه Tutorial براي Stored Procedures در Sql Server است:
http://www.mssqltips.com/tutorial.asp?tutorial=160
Shell Sort!!
اين فايل بحتش راجع به مقدار k است كه اينجا بهش H مي گه.
http://www.waset.org/journals/waset/v27/v27-12.pdf
فرمول قبلي كه براي H وجود داشته اين بوده: h1 = 1 و ديگر h ها: h2 = 3h1 + 1 و به همين ترتيب تا وقتي كه ht+2 ≥ N.
براي 100 عضو داريم: 1و 4و 13و40 و 121 كه بر اساس فرمول بالا دو تاش رو كم ميكنيم و در نهايت {1و4و13}h
اين مقاله پيشنهاد ميكنه كه (h1=ceil(n/2 باشه و ديگر h ها به صورت: (h2=ceil(h1/2 و به همين ترتيب. (Ceil يعني قسمت بالاي جزء صحيح)
اين مقاله ميگه كه در اين صورت گرچه h هاي بيشتري داريم اما تعداد جابچايي ها كمتر ميشه.
گرچه كه صحت اين مقاله رو نمي دونم اما حداقل نتيجهاي كه واسه ما داره اينه كه فرمولي كه سر كلاس پيشنهاد دادين درسته!!!
اشتراک در:
پستها (Atom)