ﺑﻪ ﻧﺎم ﺧﺪا ﺑﺮﻧﺎﻣﻪ ﺳﺎزي ﭘﻴﺸﺮﻓﺘﻪ داﻧﺸﻜﺪه م.ﻛﺎﻣﭙﻴﻮﺗﺮ ،داﻧﺸﮕﺎه ﺻﻨﻌﺘﻲ ﺷﺮﻳﻒ ﺗﻤﺮﻳﻦ ﺳﺮي اول زﻣﺎن ﺗﺤﻮﻳﻞ 25 :ﻓﺮوردﻳﻦ 86 ﺗﻤﺮﻳﻦ ﻫﺎ را ﺗﺎ ﻧﻴﻤﻪ ﺷﺐ زﺑﺎن ﺗﺤﻮﻳﻞ ﺑﻪ آدرس اي-ﻣﻴﻞ درس ارﺳﺎل ﻧﻤﺎﻳﻴﺪ. email subject Body Attachment [email protected] hw1-StudentID ﺧﺎﻟﯽ ﺑﻤﺎﻧﺪ hw1.java 2 در اﻳـــﻦ ﺗﻤـــﺮﻳﻦ ﺷـــﻤﺎ ﻣـــﻲ ﺑﺎﻳـــﺴﺖ ﻳـــﻚ ﺻـــﻒ 1را ﭘﻴـــﺎده ﺳـــﺎزي ﻧﻤﺎﻳﻴـــﺪ .ﺑـــﺮاي اﻳﻨﻜـــﺎر واﺳـــﻂ java.util.Collectionرا ﭘﻴﺎده ﺳﺎزي ﻧﻤﺎﻳﻴﺪ ﻳﺎ از ﻛﻼس java.util.AbstractQueueﻣـﺸﺘﻖ ﺑﮕﻴﺮﻳﺪ .ﺗﻮﺟﻪ ﻛﻨﻴﺪ ﻛﻪ ﺷﻤﺎ ﺑﻪ ﻫﻴﭻ ﻋﻨﻮان ﻣﺠﺎز ﻧﻴﺴﺘﻴﺪ ﻛﻪ از ﻫﻴﭻ ﻳـﻚ از containerﻫـﺎي ﻣﻮﺟـﻮد در ﺑﺴﺘﻪ ) java.utilﻣﻨﺠﻤﻠﻪ ﺧﻮد ( queueاﺳﺘﻔﺎده ﻧﻤﺎﻳﻴﺪ .ﺑﻨﺎﺑﺮ اﻳﻦ ﻧﻮﺷﺘﻦ ﺻﻒ از ﭘﺎﻳﻪ ﺑﺮ ﻋﻬﺪه ﺷﻤﺎ ﻣﻲ ﺑﺎﺷﺪ. واﺳﻂ Collectionﺑﻪ ﺻﻮرت زﻳﺮ ﻣﻲ ﺑﺎﺷﺪ. { >public interface Collection<E> extends Iterable<E ☺ ;)(int size ☺ ;)(boolean isEmpty ☺ ;)boolean contains(Object o ☺ ;)(Iterator<E> iterator ☺ ;)(Object[] toArray ☺ ;)<T> T[] toArray(T[] a ☺ ;)boolean add(E o ☺ ;)boolean remove(Object o ☺ ;)boolean containsAll(Collection<?> c ☺ ;)boolean addAll(Collection<? extends E> c ☺ ;)boolean removeAll(Collection<?> c ☺ ;)boolean retainAll(Collection<?> c ☺ ;)(void clear ☺ ;)boolean equals(Object o ☺ ;)(int hashCode } T T T ﻧﻴﺎزي ﺑﻪ اﺳﺘﻔﺎده از Generic Programmingﻧﻤﻲ ﺑﺎﺷﺪ .ﻣﻲ ﺗﻮاﻧﻴﺪ از Objectﺑﻪ ﺻﻮرت ﻋﺎم ﻳﺎ ﻛﻼس ) nodeﻛﻪ زﺣﻤﺖ ﻧﻮﺷﺘﻨﺶ را ﺧﻮدﺗﺎن ﻣﻲ ﻛﺸﻴﺪ! ( ﺑﺮاي ﻋﻨﺎﺻﺮي ﻛﻪ در ﺻﻒ ﻧﮕﻪ ﻣﻲ دارﻳﺪ اﺳﺘﻔﺎده ﻛﻨﻴﺪ .ﭘﻴﺎده ﺳﺎزي ﻣﺘﺪ ﻫﺎﻳﻲ ﻛﻪ ﻣﺸﺨﺺ ﺷﺪه اﻧﺪ اﻟﺰاﻣﻲ ﻣﻲ ﺑﺎﺷﺪ .ﺑﺮاي ﺑﺎﻗﻲ ﻣﺘﺪ ﻫﺎ از ﻳﻚ ﺑﻠﻮك ﺧﺎﻟﻲ اﺳﺘﻔﺎده ﻧﻤﺎﻳﻴﺪ. queue 1 interface 2 ﺷﻤﺎ ﺑﺎﻳﺪ در ﻛﻼس ) hw1ﻛﻼس اﺻﻠﻲ ﺑﺮﻧﺎﻣﻪ ( ﻛﻼس ﺻﻔﻲ را ﻛﻪ ﻧﻮﺷﺘﻪ اﻳﺪ ﺗﺴﺖ ﻧﻤﺎﻳﻴﺪ .ﺑﺮاي اﻳﻨﻜﺎر ﺗﻮﺳﻂ javax.swing.JOptionPane.showInputDialogﺗﻌﺪادي ﺷﻴﺊ را از ﻛﺎرﺑﺮ درﻳﺎﻓﺖ ﻧﻤﻮده و در ﺻﻒ درج ﻧﻤﺎﻳﻴﺪ و ﺑﺮ روي آﻧﻬﺎ ﻋﻤﻠﻴﺎت ﻣﺨﺘﻠﻒ ﺻﻒ را ﺗﺴﺖ ﻛﻨﻴﺪ. ﻣﺨﺘﺼﺮي درﺑﺎره ﺻﻒ ﺻﻒ ﻫﺎ از ﺟﻤﻠﻪ ﺳﺎده ﺗﺮﻳﻦ داده ﺳﺎﺧﺘﺎر ﻫﺎي ﻣﻮﺟﻮد ﻣﻲ ﺑﺎﺷﻨﺪ ﻛﻪ ﻋﻤﻮﻣﺎ ﺑﻪ دو ﺻﻮرت 3FIFOﻳﺎ ﺻﻒ اوﻟﻮﻳﺖ 4ﭘﻴﺎده ﺳﺎزي ﻣﻲ ﺷﻮﻧﺪ. در ﭘﻴﺎده ﺳﺎزي ﺑﻪ ﺷﻜﻞ ) FIFOﻛﻪ ﺳﺎده ﺗﺮﻳﻦ ﻧﻮع ﻣﻲ ﺑﺎﺷﺪ و ﺗﻮﺳﻂ آراﻳﻪ ﻳﺎ linkListﻗﺎﺑﻞ اﻧﺠﺎم اﺳﺖ( اﺷﻴﺎء ﺑﻪ ﻫﻤﺎن ﺗﺮﺗﻴﺒﻲ ﻛﻪ ﺑﻪ ﺻﻒ وارد ﻣﻲ ﺷﻮﻧﺪ از ﺻﻒ ﺧﺎرج ﻫﻢ ﻣﻲ ﺷﻮﻧﺪ .در ﭘﻴﺎده ﺳﺎزي ﺻﻒ اوﻟﻮﻳﺖ اﺷﻴﺎ ﺑﺪون ﺗﻮﺟﻪ ﺑﻪ ﺗﺮﺗﻴﺐ درﺟﺸﺎن و ﺗﻨﻬﺎ ﺑﺮ اﺳﺎس اوﻟﻮﻳﺘﻲ ﻛﻪ ﺑﻪ آﻧﻬﺎ اﺧﺘﺼﺎص داده ﺷﺪه اﺳﺖ از روي ﺻﻒ ﺑﺮ داﺷﺘﻪ ﻣﻲ ﺷﻮﻧﺪ .راﻳﺞ ﺗﺮﻳﻦ راه ﭘﻴﺎده ﺳﺎزي ﺻﻒ اوﻟﻮﻳﺖ اﺳﺘﻔﺎده از درﺧﺖ ﻳﺎ ﻫﻴﭗ ﻣﻲ ﺑﺎﺷﺪ. ﺑﻨﺎﺑﺮ اﻳﻦ ﻳﻚ ﭘﻴﺎده ﺳﺎزي آﺳﺎن ﺑﺮاي ﺻﻒ ﻣﻲ ﺗﻮاﻧﺪ ﺑﻪ ﺻﻮرت زﻳﺮ ﺑﺎﺷﺪ: {public class adel {)public static void main(String... args ; )(queue a = new queue ;)a.add(1 ;)a.add(2 ;))(System.out.println("removed from q:" + a.remove {) for( Object o : a ;)System.out.println("remaining object:" + o } } } {class queue extends java.util.LinkedList {)(public Object remove ; )(return removeFirst } } ﻣﻮﻓﻖ ﺑﺎﺷﻴﺪ. First-In-First-Out 3 Priority Queue 4
© Copyright 2025 Paperzz