DS sylab.pdf

‫‪Data Structure‬‬
‫)‪(40-254‬‬
‫در اﻳﻦ درس ﻣﺒﺎﻧﻲ ﺳﺎﺧﺘﻤﺎن دادﻩ هﺎ و اﻟﮕﻮرﻳﺘﻢ هﺎ ﻣﻮرد ﺑﺮ‬
‫رﺳﻲ ﻗﺮار ﻣﻴﻜﻴﺮد‪.‬‬
‫ﻣﻄﺎﻟﺒﻲ آﻪ داﻧﺸﺠﻮ ﺑﺎﻳﺪ از ﻗﺒﻞ ﺑﺪاﻧﺪ‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫ﺳﺎﺧﺘﻤﺎن ﮔﺴﺴﺘﻪ )ﺑﻌﻨﻮان درس ﭘﻴﺶ ﻧﻴﺎز(‬
‫ﺁﺷﻨﺎﺋﻲ ﺑﺎ ﻳﻜﻲ از زﺑﺎﻧﻬﺎي ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﻲ ﻣﺎﻧﻨﺪ‬
‫‪C‬‬
‫‪C++‬‬
‫‪Java‬‬
‫‪Or Pascal‬‬
‫در اﻳﻦ درس ﺳﻌﻲ ﻣﻴﺸﻮد اﻟﮕﻮرﻳﺘﻢ هﺎ ﻣﺴﺘﻘﻞ از زﺑﺎن ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﻲ‬
‫اراﺋﻪ ﮔﺮدد‪.‬‬
‫ﻣﺮاﺟﻊ‬
Introduction to Algorithms, T.Cormen, V.Leiserson, •
R.Riverst & C.Stein (CLRS)
MIT Press, Sept. 2001,
‫ﻣﺮاﺟﻊ‬
‫‪Foundation of Computer Science,‬‬
‫‪A.V.Aho, D.Ullman, W.H.Freeman & Company,‬‬
‫‪1992,‬‬
‫• ﻣﺒﺎﻧﻲ ﻋﻠﻢ آﺎﻣﭙﻴﻮﺗﺮ ‪ -‬ﺟﻠﺪ اول –‬
‫ﺗﺮﺟﻤﻪ ﻣﻨﺼﻮر ﺟﻢ زاد‬
‫اﻧﺘﺸﺎرات داﻧﺸﮕﺎﻩ ﺻﻨﻌﺘﻲ ﺷﺮﻳﻒ ‪١٣٨١ -‬‬
‫رﻳﺰ ﻣﻮاد درس‬
‫‪ .١‬ﻣﻌﺮﻓﻲ درس‬
‫ ﺳﻄﻮح ﺗﺠﺮﻳﺪ )اﻧﺘﺰاع(‬‫ ﻣﺮاﺣﻞ ﻣﺨﺘﻠﻒ ﺣﻞ ﻣﺴﺌﻠﻪ و اﻧﺘﺰاع‬‫ دادﻩ ﻣﺪل هﺎ ‪ ،‬دادﻩ ﮔﻮﻧﻪ هﺎ ‪ ،‬دادﻩ ﺳﺎﺧﺘﺎر هﺎ ‪ ،‬دادﻩ ﮔﻮﻧﻪ هﺎي اﻧﺘﺰاﻋﻲ ‪،‬‬‫ﺷﺌﻲ )‪(Object‬‬
‫‪ .٢‬روش هﺎي ﺗﺤﻠﻴﻞ اﻟﮕﻮرﻳﺘﻢ هﺎ‬
‫ ﺗﺎﺑﻊ رﺷﺪ ‪ ،‬ﺷﻤﺎرش ﻣﺮاﺣﻞ ‪ ،‬راﺑﻄﻪ هﺎي ﺑﺎزﮔﺸﺘﻲ و روش هﺎي ﺣﻞ ﺁﻧﻬﺎ‬‫)ﺣﺪس و اﺳﺘﻘﺮا( ‪ ،‬راﺑﻄﻪ هﺎي هﻤﮕﻦ‬
‫رﻳﺰ ﻣﻮاد درس‬
‫‪ .٣‬دادﻩ ﺳﺎﺧﺘﺎر هﺎي ﻟﻴﺴﺖ‬
‫ ﺗﻌﺎرﻳﻒ اوﻟﻴﻪ ‪ ،‬ﻋﻤﻠﻴﺎت ﺑﺮ روي ﻟﻴﺴﺖ‬‫ دادﻩ ﺳﺎﺧﺘﺎر هﺎ ﺑﺮاي ﻟﻴﺴﺖ ‪ ،‬آﺎر ﺑﺎ اﺷﺎرﻩ ﮔﺮ هﺎي واﻗﻌﻲ‬‫ اﻧﻮاع ﻟﻴﺴﺖ هﺎ ‪ :‬ﺻﻒ‬‫ﭘﺸﺘﻪ ‪ ، Heap‬ﭘﻴﺎدﻩ ﺳﺎزي ﺁﻧﻬﺎ ‪ ،‬ﻟﻴﺴﺖ هﺎي آﻠﻲ‬
‫ ﭘﻴﺎدﻩ ﺳﺎزي رﺷﺘﻪ هﺎ ُ‬‫‪Garbage Collection -‬‬
‫‪Strings‬‬
‫رﻳﺰ ﻣﻮاد درس‬
‫‪.٣‬‬
‫دادﻩ ﺳﺎﺧﺘﺎر هﺎي درﺧﺖ‬
‫‪-‬‬
‫‪-‬‬
‫ﺗﻌﺎرﻳﻒ اوﻟﻴﻪ ‪ ،‬درﺧﺖ ﻋﺒﺎرت ‪Expression Tree :‬‬
‫ﭘﻴﺎدﻩ ﺳﺎزي هﺎي ﻣﺨﺘﻠﻒ درﺧﺖ هﺎ ‪،‬‬
‫اﺳﺘﻘﺮا ﺑﺮ روي درﺧﺖ‬
‫ﭘﻴﻤﺎﻳﺶ درﺧﺖ‬
‫اﺳﺘﻘﺮاي ﺳﺎﺧﺘﺎري ‪Structural Induction :‬‬
‫درﺧﺖ دودوﺋﻲ ‪ } Binary Tree :‬ﺗﻮﻟﻴﺪ آﺪ اﺳﻤﺒﻠﻲ ازدرﺧﺖ ﻋﺒﺎرت {‬
‫اﻋﻤﺎل ﻣﺨﺘﻠﻒ ﺑﺮ روي درﺧﺖ ﻋﺒﺎرت‬
‫رﻳﺰ ﻣﻮاد درس‬
‫‪ .۵‬دادﻩ ﺳﺎﺧﺘﺎر هﺎ ﺑﺮاي ﻓﺮهﻨﮓ دادﻩ هﺎ‬
‫ درﺧﺖ دودوﺋﻲ ﺟﺴﺘﺠﻮ ‪Binary search tree :‬‬‫ درﺧﺖ دودوﺋﻲ ﺟﺴﺘﺠﻮي ﻣﺘﻮازن ‪Balanced binary search tree :‬‬‫ درﺧﺖ ‪AVL‬‬‫ درﺧﺖ ” ﻗﺮﻣﺰ – ﺳﻴﺎﻩ ”‬‫ درﺧﺖ ﺑﺎزﻩ ‪Interval tree :‬‬‫ درﺧﺖ اﻟﻔﺒﺎ ‪Trie :‬‬‫‪ -‬درﺧﺖ هﺎي ‪٢-٣‬‬
‫رﻳﺰ ﻣﻮاد درس‬
‫‪ – ۶‬ﺳﺎﻳﺮ دادﻩ ﺳﺎﺧﺘﺎر هﺎ‬
‫‪-‬‬
‫ﺻﻒ اوﻟﻮﻳﺖ و درﺧﺖ ﻧﻴﻤﻪ ﻣﺮ ت ب ‪:‬‬
‫‪partially ordered tree‬‬
‫‪Priority Queue and‬‬
‫رﻳﺰ ﻣﻮاد درس‬
‫‪ – ۶‬ﺳﺎﻳﺮ دادﻩ ﺳﺎﺧﺘﺎر هﺎ‬
‫‪-‬‬
‫ﺻﻒ اوﻟﻮﻳﺖ و درﺧﺖ ﻧﻴﻤﻪ ﻣﺮ ت ب ‪:‬‬
‫‪partially ordered tree‬‬
‫‪Priority Queue and‬‬
‫رﻳﺰ ﻣﻮاد درس‬
Sorting Algorithms ‫ – اﻟﮕﻮرﻳﺘﻢ هﺎي ﻣﺮﺗﺐ ﺳﺎزي‬٧
Decision Tree
Bubble ‫ﺣﺒﺎﺑﻲ‬
Insertion ‫درﺟﻲ‬
Selection ‫اﻧﺘﺨﺎﺑﻲ‬
Heap sort : ‫ اﻟﮕﻮرﻳﺘﻢ هﺎي ﺑﺎ ﻣﺮﺗﺒﻪ ﻏﻴﺮ ﺧﻄﻲ‬Quick sort
Shell sort
: ‫ درﺧﺖ ﺗﺼﻤﻴﻢ‬: ‫ اﻟﮕﻮرﻳﺘﻢ هﺎي ﺳﺎدﻩ‬-
Count sort : ‫ اﻟﮕﻮرﻳﺘﻢ هﺎي ﺑﺎ ﻣﺮﺗﺒﻪ ﺧﻄﻲ‬Radix sort
Bucket sort
External sort
‫رﻳﺰ ﻣﻮاد درس‬
Hash tables and related algorithms
‫ﻧﺤﻮﻩ ارزﻳﺎﺑﻲ درس‬
‫• ﺗﻤﺮﻳﻦ هﺎي درﺳﻲ )ﻣﺴﺎﺋﻞ ﺗﺌﻮري ( ‪..................‬‬
‫‪ ١٫۵‬ﻧﻤﺮﻩ‬
‫ﻣﺴﺎﺋﻞ ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﻲ ‪١٫۵ ......‬‬
‫‪٣‬‬
‫• ﺁزﻣﻮن هﺎي آﻮﺗﺎﻩ ‪ ٣ :‬آﻮﺋﻴﺰ ‪ ،‬هﺮ آﺪام ‪ ١‬ﻧﻤﺮﻩ‬
‫• ﺁزﻣﻮن ﻣﻴﺎن ﺗﺮم ‪..............................................‬‬
‫‪۵‬‬
‫• ﺁزﻣﻮن ﭘﺎﻳﺎن ﺗﺮم ‪............................................‬‬
‫‪٩‬‬
‫‪٢‬‬
‫آﻼس هﺎي ﺣﻞ ﺗﻤﺮﻳﻦ‬
‫• ﺗﻮﺳﻂ ‪ TA‬درس ﺁﻗﺎي ﺣﻤﻴﺪ رﺿﺎ واﻋﻈﻲ اراﺋﻪ ﻣﻴﺸﻮد‪.‬‬
‫• ﺷﺮآﺖ در آﻼس هﺎي ﺣﻞ ﺗﻤﺮﻳﻦ ﻗﻮﻳﺎ ّ ﺗﻮﺻﻴﻪ ﻣﻴﺸﻮد‪.‬‬
‫• ﻳﺎد ﺁوري ﻣﻬﻢ ‪ :‬آﻠﻴﻪ ﺗﻤﺮﻳﻦ هﺎ ﺑﺎﻳﺴﺘﻲ ﻣﺴﺘﻘﻼ ﺗﻮﺳﻂ‬
‫داﻧﺸﺠﻮ‬
‫اﻧﺠﺎم ﺷﻮد‪.‬‬