Senin, 18 April 2011

TUGAS LATIHAN STRUKTUR DATA STRACK



TUGAS STRUKTUR DATA STRACK

Soal!

  1. Stack termasuk (a) linear list atau (b) non linear lilst? Jelaskan
  2. Apa saja perlakuan yang di mungkinkan sehinga suatu stack di katakana dalam kondisi hampa?
  3. sebutkan 4 (empat) operasi pada stack dan beri contoh-contohnya.
  4. sebutkan dua kesalahan yang mungkin terjadi pada pengoprasian stack dan pada kondisi seperti apa kesalahan itu bias terjadi?
  5. konfersikan notasi infix A-B*C^D^(E*F/(G-H)) ke notasi postfix.
Jawab:
  1. Stack adalah termasuk (a) linear list, karena penghapusan elemenya hanya dapat di lakukan pada satu posisi, yaitu posisi akhir dari list (TOP)
  2. Dengan cara memeriksa TOP of STACK, jika TOP masih =-1, maka berarti STACK masih kosong.
  3. A. ISEMPTY
Ex: Int ISEMPTY ()                                                    MAX_STACK
            {                                                                       
            If (tumpuk.top==-1                                       
            Return 1;                              
            Else                                                                 Top=-1
            Return 0;
            }
B. ISFULL
Ex: Int ISFULL ()
            {
            If (tumpuk, top==MAX_STACK-1    4                            MAX_STACK
            Return 1;                                              3                           Top=4
            Else                                                       2
            Return 0;                                              1
            }                                                             0
            C. PUSH
            Ex: Void Push (char d[s])
                        {tumpuk.top++
                        Strcpy(tumpuk.data[tumpuk.top],d);
                        }

         4                        MAX_STACK       4                         MAX_STACK
                     3                                                        3                         PUSH elemen A
                     2                                                        2
                    1                                                         1
                     0                 Top=-1                          0                           Top=Top+1
                                                                                                                =-1+1
                                                                                                                =0
             D. CLEAR
             Ex: Void POP ()
                    {
                     Print(“Data yang di POP=%5/n”,tumpuk.data
                     [tumpuk.top]);tumpuk.top--;
                     }
















 

                     4                         MAX_STACK    4                            Data yang di POP=C
                      3                                                    3
                      2               top=2                            2
                      1                                                    1                top=top-1
                      0                                                   0                     =2-1
                                                                                                   =1



  1. Infix    : A-B*C^D^(E*F/(G-H))
Postfix : AB-CD*^E^F*GH-+

Tidak ada komentar:

Posting Komentar