ﭘﺮ ﻭﮊٔﻩ ۱ﺳﺎﺧﺘﻤﺎﻥ ﺩﺍﺩﻩ ۲ ﻟﯿﺴﺖ ﭘﯿﻮﻧﺪﯼ ﺩﻭﻃﺮﻓﻪ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .ﻣﻮﻋﺪ ﺗﺤﻮﯾﻞ ۸۵/۸/۲۰ :ﺗﺎ ۸:۰۰ﺏ.ﻅ. ۱ ﻟﯿﺴﺖ ﭘﯿﻮﻧﺪﯼ ﺩﻭﻃﺮﻓﻪ ،ﯾﮏ ﻧﻮﻉ ﻟﯿﺴﺖ ﭘﯿﻮﻧﺪﯼ ﺍﺳﺖ ﮐﻪ ﻫﺮ ﮔﺮٔﻩ ﺁﻥ ،ﯾﮏ ﺍﺷﺎﺭﻩﮔﺮ ﺑﻪ ﮔﺮٔﻩ ﻗﺒﻠﯽ ﻭ ﯾﮏ ﺍﺷﺎﺭﻩﮔﺮ ﺑﻪ ﮔﺮٔﻩ ﺑﻌﺪﯼِ ﺧﻮﺩ ﺩﺍﺭﺩ .ﺑﻨﺎﺑﺮﺍﯾﻦ ﭘﯿﻤﺎﯾﺶ ﺍﯾﻦ ﻟﯿﺴﺖ ﭘﯿﻮﻧﺪﯼ ﺩﺭ ﻫﺮ ﺩﻭ ﺟﻬﺖ ﺍﻣﮑﺎﻥﭘﺬﯾﺮ ﺍﺳﺖ .ﺩﺭ ﺍﯾﻦ ﭘﺮ ﻭﮊﻩ ﺷﻤﺎ ﺑﺎﯾﺪ ﯾﮏ ﻟﯿﺴﺖ ﭘﯿﻮﻧﺪﯼ ﺩﻭﻃﺮﻓﻪ ﺑﺎ ﻗﺎﺑﻠﯿﺘﻬﺎﯼ ﺯ ﯾﺮ ﭘﯿﺎﺩﻩﺳﺎﺯﯼ ﮐﻨﯿﺪ ﮐﻪ ﮔﺮﻩﻫﺎﯼ ﺁﻥ ﺍﻋﺪﺍﺩ ﺻﺤﯿﺢ ) (Integerﺩﺭ ﺧﻮﺩ ﺫﺧﯿﺮﻩ ﻣﯽﮐﻨﻨﺪ. :"push front i" .۱ﺩﺭﺝ ﮔﺮﻩﺍﯼ ﺟﺪﯾﺪ ﻣﺤﺘﻮﯼ ،iﺩﺭ ﺍﺑﺘﺪﺍﯼ ﻟﯿﺴﺖ. :"push back i" .۲ﺩﺭﺝ ﮔﺮﻩﺍﯼ ﺟﺪﯾﺪ ﻣﺤﺘﻮﯼ ،iﺩﺭ ﺍﻧﺘﻬﺎﯼ ﻟﯿﺴﺖ. (۰ ≤ α, β ≤ n − ۱) :"swap α β" .۳ﺟﺎﺑﺠﺎ ﮐﺮﺩﻥ ﻋﻨﺼﺮ αﻭ βﺍﻡ ﻟﯿﺴﺖ. :"delete i" .۴ﭘﯿﻤﺎﯾﺶ ﻟﯿﺴﺖ ﻭ ﺣﺬﻑ ﺗﻤﺎﻣﯽ ﮔﺮﻩﻫﺎﯾﯽ ﮐﻪ ﺣﺎﻭﯼ ﻋﺪﺩ iﻫﺴﺘﻨﺪ .ﺩﺭ ﻧﺘﯿﺠ ٔﻪ ﺍﯾﻦ ﻋﻤﻞ ﺗﻌﺪﺍﺩ ﮔﺮﻩﻫﺎﯼ ﺣﺬﻑﺷﺪﻩ ﺩﺭ ﯾﮏ ﺧﻂ ﺍﺯ ﻓﺎﯾﻞ ﺧﺮ ﻭﺟﯽ ﻧﻮﺷﺘﻪ ﻣﯽﺷﻮﺩ. :"find min" .۵ﭘﯿﻤﺎﯾﺶ ﻟﯿﺴﺖ ﻭ ﭼﺎﭖ ﮐﻮﭼﮑﺘﺮ ﯾﻦ ﻋﺪِﺩ ﻟﯿﺴﺖ ،ﺩﺭ ﯾﮏ ﺳﻄﺮ ﻓﺎﯾﻞ ﺧﺮ ﻭﺟﯽ .ﺩﺭ ﺻﻮﺭﺕ ﺧﺎﻟﯽ ﺑﻮﺩﻥ ﻟﯿﺴﺖ nullﭼﺎﭖ ﺷﻮﺩ. :"print" .۶ﭼﺎﭖ ﺩﻧﺒﺎﻟٔﻪ ﺍﻋﺪﺍﺩ ﺁﻣﺪﻩ ﺩﺭ ﻟﯿﺴﺖ ﺍﺯ ﺍﺑﺘﺪﺍ ﺑﻪ ﺍﻧﺘﻬﺎ ﺩﺭ ﯾﮏ ﺧﻂ ﺍﺯ ﻓﺎﯾﻞ ﺧﺮ ﻭﺟﯽ )ﺑﺎ ﯾﮏ ﻓﺎﺻﻠﻪ ﺑﯿﻦ ﻫﺮ ﺩﻭ ﻋﺪﺩ( .ﺩﺭ ﺻﻮﺭﺕ ﺧﺎﻟﯽ ﺑﻮﺩﻥ ﻟﯿﺴﺖ ﯾﮏ ﺧﻂ ﺧﺎﻟﯽ ﭼﺎﭖ ﺷﻮﺩ. :"print reverse" .۷ﭼﺎﭖ ﺩﻧﺒﺎﻟٔﻪ ﺍﻋﺪﺍﺩ ﺁﻣﺪﻩ ﺩﺭ ﻟﯿﺴﺖ ﺍﺯ ﺍﻧﺘﻬﺎ ﺑﻪ ﺍﺑﺘﺪﺍ ﺩﺭ ﯾﮏ ﺧﻂ ﺍﺯ ﻓﺎﯾﻞ ﺧﺮ ﻭﺟﯽ )ﺑﺎ ﯾﮏ ﻓﺎﺻﻠﻪ ﺑﯿﻦ ﻫﺮ ﺩﻭﻋﺪﺩ( .ﺩﺭ ﺻﻮﺭﺕ ﺧﺎﻟﯽ ﺑﻮﺩﻥ ﻟﯿﺴﺖ ﯾﮏ ﺧﻂ ﺧﺎﻟﯽ ﭼﺎﭖ ﺷﻮﺩ. nﺗﻌﺪﺍﺩ ﮔﺮﻩﻫﺎﯼ ﻟﯿﺴﺖ ﺍﺳﺖ. ﻋﻤﻠﻬﺎﯼ ۱ﻭ ۲ﺑﺎﯾﺪ ﺩﺭ ) O(۱ﺍﻧﺠﺎﻡ ﺷﻮﻧﺪ ،ﻋﻤﻞ ۳ﺩﺭ )) O(max(α, βﻭ ﻋﻤﻞ ۵ ،۴ﻭ ۶ﺩﺭ ).O(n ﺗﻮﺟﻪ ﺩﺭ ﻫﺮ ﯾﮏ ﺍﺯ ﺧﻄﻬﺎﯼ ﻓﺎﯾﻞ list.inﯾﮑﯽ ﺍﺯ ﺩﺳﺘﻮﺭﻫﺎﯼ ﺷﺸﮕﺎﻧٔﻪ ﺑﺎﻻ ﺑﺎ ﺁﺭﮔﻮﻣﺎﻧﻬﺎﯼ ﻣﺮﺑﻮﻃﻪ ﺁﻣﺪﻩ ﺍﺳﺖ .ﺑﺮﻧﺎﻣٔﻪ ﺷﻤﺎ ﭘﺲ ﺍﺯ ﺍﺟﺮﺍ ،ﺑﺎﯾﺪ ﻓﺎﯾﻞ list.inﺭﺍ ﺍﺯ ﭘﻮﺷٔﻪ ﺟﺎﺭﯼ ﺑﺨﻮﺍﻧﺪ ﻭ ﻓﺎﯾﻞ list.outﺭﺍ ﺗﻮﻟﯿﺪ ﮐﻨﺪ ﮐﻪ ﻃﺒﻖ ﺩﺳﺘﻮﺭﺍﻟﻌﻤﻠﻬﺎﯼ ﺑﺎﻻ ﻣﺸﺨﺺ ﺷﺪﻩ ﺍﺳﺖ .ﺍﺯ ﺁﻧﺠﺎ ﮐﻪ ﻣﻘﺪﺍﺭﯼ ﺍﺯ ﻧﻤﺮٔﻩ ﺷﻤﺎ ﺑﻪ ﺩﺍﺩﻥ ﺗﻌﺪﺍﺩﯼ ﻭﺭ ﻭﺩﯼ ﻭ ﺑﺮ ﺭﺳﯽ ﺧﺮ ﻭﺟﯽ ﺑﺮﻧﺎﻣﻪﺗﺎﻥ ﺍﺧﺘﺼﺎﺹ ﺩﺍﺭﺩ ،ﺩﺭ ﭘﯿﺮ ﻭﯼ ﺩﻗﯿﻖ ﺍﺯ ﺩﺳﺘﻮﺭﺍﻟﻌﻤﻠﻬﺎﯼ ﺑﺎﻻ ﮐﻮﺷﺎ ﺑﺎﺷﯿﺪ .ﻫﻤﭽﻨﯿﻦ ﻧﻤﻮﻧﻪﺍﯼ ﺍﺯ ﻓﺎﯾﻞ ﻭﺭ ﻭﺩﯼ ﻭ ﺧﺮ ﻭﺟﯽِ ﻧﻤﻮﻧﻪ ﺩﺭ ﮐﻨﺎﺭ ﺻﻮﺭﺕ ﭘﺮ ﻭﮊﻩ ﻗﺮﺍﺭ ﺩﺍﺭﺩ ﮐﻪ ﻣﯽﺗﻮﺍﻧﯿﺪ ﺑﺎ ﺁﻧﻬﺎ ﺑﺮﻧﺎﻣﻪﻫﺎﯾﺘﺎﻥ ﺭﺍ ﺗﺴﺖ ﮐﻨﯿﺪ. ۱ﺩﺭ ﺻﻮﺭﺕ ﺍﺭﺳﺎﻝ ﭘﺲ ﺍﺯ ﻣﻮﻋﺪ ﺗﺤﻮﯾﻞ ﺗﺎ ۸:۰۰ﺏ.ﻅ ۸۵/۸/۲۵ .ﻧﯿﻤﯽ ﺍﺯ ﻧﻤﺮﻩ ﺭﺍ ﺍﺯ ﺩﺳﺖ ﻣﯽﺩﻫﯿﺪ ﻭ ﭘﺲ ﺍﺯ ﺁﻥ ﺗﻤﺎﻡ ﻧﻤﺮﻩ ﺭﺍ. 2 Doubly-linked list or Tow-way linked list ۱ ﺑﺮﻧﺎﻣﻪﻫﺎﯼ ﺧﻮﺩ ﺭﺍ ﻣﯽﺗﻮﺍﻧﯿﺪ ﺑﺎ ﺟﺎﻭﺍ ﻭ ﺑﺎ ﮐﺎﻣﭙﺎﯾﻠ ِﺮ JDK 1.5ﻭ ﯾﺎ ﺑﺎ C++ﻭ ﺑﺎ ﮐﺎﻣﭙﺎﯾﻠﺮ g++ﺑﻨﻮﯾﺴﯿﺪ .ﺩﺭ ﻏﯿﺮ ﺍﯾﻦ ﺻﻮﺭﺕ ﻧﻤﺮﻩﺍﯼ ﻧﺨﻮﺍﻫﯿﺪ ﮔﺮﻓﺖ .ﺍﮔﺮ ﺑﺎ ﺟﺎﻭﺍ ﺑﺮﻧﺎﻣﻪ ﻣﯽﻧﻮﯾﺴﯿﺪ ﻧﺎﻡ ﮐﻼﺱ ﺍﺻﻠﯽ ﺧﻮﺩ ﺭﺍ Mainﺑﮕﺬﺍﺭ ﯾﺪ ﻭ ﺍﮔﺮ ﺑﺎ C++ ﻣﯽﻧﻮﯾﺴﯿﺪ ﻧﺎﻡ ﻓﺎﯾﻞ ﺍﺻﻠﯽ ﺧﻮﺩ ﺭﺍ main.cppﺑﮕﺬﺍﺭ ﯾﺪ. ﻓﺎﯾﻠﻬﺎﯼ ﺧﻮﺩ ﺭﺍ ﺩﺭ ﭘﻮﺷﻪﺍﯼ ﺑﺎ ﻧﺎﻡ ﺷﻤﺎﺭﻩﺩﺍﻧﺸﺠﻮ ﯾﯽﺗﺎﻥ ﺩﺭ ﯾﮏ ﻓﺎﯾﻞ zipﺑﺎ ﻫﻤﯿﻦ ﻧﺎﻡ ﻗﺮﺍﺭ ﺩﻫﯿﺪ ﻭ ﺑﻪ ﺁﺩﺭﺱ [email protected]ﺍﯾﻤﯿﻞ ﺑﺰﻧﯿﺪ subject .ﻧﺎﻣﻪﻫﺎﯼ ﺧﻮﺩ ﺭﺍ ﺣﺘﻤﺎً DS-Proj-1st-xxxxxxxxﮐﻪ xﻫﺎ ﺑﺎ ﺷﻤﺎﺭﻩﺩﺍﻧﺸﺠﻮﯾﯽ ﺷﻤﺎ ﺟﺎﯾﮕﺰﯾﻦ ﺷﺪﻩﺍﻧﺪ ،ﻗﺮﺍﺭ ﺩﻫﯿﺪ. »ﻣﻮﻓﻖ ﺑﺎﺷﯿﺪ« ۲
© Copyright 2025 Paperzz