project3.pdf

‫به نام خدا‬
‫درس داده ساختارها و الگوریتن ها‬
‫تورین عولی شواره سوم‬
‫هوعد تحویل ‪7/91/98 :‬‬
‫__________________________________________________________________‬
‫فاٗل ّإ السم تزإ اجزإ تزًاهِ هزتَط تِ ّز سَال را در پَشِ إ هجشا تِ ًام شوارُ سَال تِ صَرت ػذدٕ‬
‫قزار دّ٘ذ‪ ،‬اٗي پَشِ ّا را در ٗک پَشِ تا ًام ‪ stdID_Project3‬کِ تِ جإ ‪ stdID‬شوارُ داًشجَٖٗ خَد را‬
‫قزار ه٘ذّ٘ذ تگذارٗذ‪ ،‬اٗي پَشِ را فشزدُ کزدُ ٍ تا قثل اس ساػت ‪ً٘ 21‬وِ شة هَػذ تحَٗل هذکَر تِ آدرس‬
‫‪ [email protected]‬ارسال کٌ٘ذ‪ .‬ػٌَاى اٗو٘ل ّواى ًام فاٗل ضو٘وِ شذُ تاشذ‪.‬‬
‫در صَرت ٍجَد ّزگًَِ اتْام ٗا پزسشٖ در هَرد سَاالت تِ آدرس ‪ [email protected]‬اٗو٘ل تشً٘ذ‪.‬‬
‫__________________________________________________________________‬
‫سوال ‪Sort.java or Sort.cpp )1‬‬
‫تزًاهِ إ تٌَٗس٘ذ کِ دًثالِ إ اس اػذاد را تِ ػٌَاى ٍرٍدٕ گزفتِ ٍ سپس تا الگَرٗتن هشخص شذُ‪ ،‬آى را هزتة کٌذ ٍ حاصل‬
‫هزتة ساسٕ را تِ ػٌَاى خزٍجٖ تزگزداًذ‪ .‬دقت داشتِ تاش٘ذ‪ ،‬تستْاٖٗ کِ تزًاهٔ شوا دادُ هٖشَد‪ ،‬سهاى اجزإ ّز ٗک اس‬
‫الگَرٗتوْإ سٗز را ً٘ش اًذاسُ گ٘زٕ هٖکٌذ‪.‬‬
‫ورودی‬
‫در خط اٍل تؼذاد ػٌاصز آى دًثالِ (‪ )N‬هٖ آٗذ‪ .‬سپس در ‪ N‬خط تؼذ‪ ،‬ػٌاصز آى دًثالِ دادُ هٖشَد‪( .‬ػٌاصز ت٘ي ‪ 0‬تا ‪999999‬‬
‫ه٘ثاشٌذ) ػذدٕ کِ در خطَط تؼذٕ سدُ هٖشَد‪ً ،‬شاى دٌّذٓ ػول٘ات سٗز است‪:‬‬
‫ػذد‬
‫ػول٘ات‬
‫‪2‬‬
‫هزتة ساسٕ تِ رٍش ‪Merge Sort‬‬
‫‪1‬‬
‫هزتة ساسٕ تِ رٍش ‪Quick Sort‬‬
‫‪3‬‬
‫هزتة ساسٕ تِ رٍش ‪Bubble Sort‬‬
‫‪4‬‬
‫هزتة ساسٕ تِ رٍش ‪Heap Sort‬‬
‫‪5‬‬
‫هزتة ساسٕ تِ رٍش ‪Counting Sort‬‬
‫خروجی‬
‫تستِ تِ اًتخاب ًَع الگَرٗتن هزتةساسٕ‪ ،‬تاٗذ دًثالِ تصَرت هزتة شذُ در ٗک سطز چاج شَد‪.‬‬
‫مثال‬
‫خروجی‬
‫‪231 443 231239 3198249‬‬
‫ورودی‬
‫‪4‬‬
‫‪231239‬‬
‫‪231‬‬
‫‪443‬‬
‫‪3198249‬‬
‫‪3‬‬
‫سوال ‪Hash.java or Hash.cpp )2‬‬
‫فزض کٌ٘ذ ساختار رکَردٕ هتشکل اس شوارُ داًشجَٖٗ ٍ اسن داًشجَ دارٗن ٍ هٖخَاّ٘ن رکَرد ّاٖٗ اس آى ًَع را در ٗک ‪hash‬‬
‫‪ table‬جإ دّ٘ن‪ .‬ػول٘ات درج ٍ حذف ٍ جستجَ را تزإ اٗي هٌظَر پ٘ادُ ساسٕ کٌ٘ذ‪ .‬تاتغ ‪ hash‬شوا تاٗذ اس رٍش ضزب تثؼ٘ت‬
‫کٌذ‪.‬‬
‫ورودی و خروجی‬
‫در خط اٍل هقذار ‪ A‬دادُ ه٘شَد‪ .‬در خط دٍم هقذار ‪.m‬‬
‫در خطَط تؼذٕ ٗکٖ اس دستَرات سٗز هٖآٗذ کِ ػولکزد آًْا در رٍتزٍ آهذُ است‪:‬‬
‫دستَر‬
‫‪insert stdid stdname‬‬
‫‪delete stdid‬‬
‫ػولکزد‬
‫داًشجَٕ تا اسن ‪ ٍ stdname‬شوارُ داًشجَٖٗ ‪ stdid‬را اضافِ ه٘کٌذ‪ .‬دقت داشتِ تاش٘ذ کِ‬
‫‪ٗ stdid‬ک ػذد است ٍ در ٍاقغ هشخص کٌٌذٓ کل٘ذ است‪.‬‬
‫در صَرت هَفق٘ت آه٘ش تَدى پ٘غام سٗز تاٗذ در ٗک سطز چاج شَد‪:‬‬
‫‪stdname stdid inserted in key.‬‬
‫کِ ‪ stdid ٍ stdname‬هشخص ّستٌذ ٍ ‪ّ key‬ن در ٍاقغ دراِٗ إ اس جذٍل ‪ّ hash‬ست کِ‬
‫ػٌصز تِ آى اضافِ شذُ است‪.‬‬
‫در صَرت تکزارٕ تَدى شوارُ داًشجَٖٗ ػثارت سٗز تاٗذ چاج شَد‪:‬‬
‫‪stdid not inserted.‬‬
‫داًشجَٕ تا شوارُ داًشجَٖٗ ‪ stdid‬را اس جذٍل درّن ساسٕ پاک ه٘کٌذ‪ .‬در صَرت هَفق٘ت آه٘ش‬
‫تَدى پ٘غام سٗز تاٗذ چاج شَد‪:‬‬
‫‪stdname stdid deleted from key.‬‬
‫ٍ در صَرت ٍجَد ًذاشتي چٌ٘ي داًشجَٖٗ تاٗذ ػثارت سٗز چاج شَد‪:‬‬
‫‪stdid not deleted.‬‬
‫ ػثارت سٗز چاج‬،‫ در صَرت پ٘ذا شذى‬.‫ ه٘گزدد‬stdid َٖٗ‫تِ دًثال داًشجَٖٗ تا شوارُ داًشج‬
:‫ه٘شَد‬
stdname stdid found in key.
:‫ ػثارت سٗز چاج ه٘شَد‬،‫ٍ در صَرت ٗافت ًشذى‬
stdid not found.
.‫ را چاج ه٘کٌذ‬hash ‫تؼذاد ػٌاصز هَجَد در جذٍل‬
search stdid
.‫تزًاهِ خاتوِ هٖ ٗاتذ‬
End
Size
‫مثال‬
‫ورودی‬
0.1
10
insert 88101011 asghar
insert 88101011 akbar
search 88101011
size
delete 88101011
delete 88101011
size
search 88101011
‫خروجی‬
asghar 88101011 inserted in 1.
88101011 not inserted.
asghar 88101011 found in 1.
1
asghar 88101011 deleted from 1.
88101011 not deleted.
0
88101011 not found.