WHAT TIME IS IT?

Sabtu, 06 Juli 2013

Tugas M3 VClass Struktur Organisasi Data 2

Saya disini akan mengulas materi yang sudah diajarkan oleh Ibu Detty Purnamasari. Yang pertama, Saya mau menjelaskan sistem pembelajaan Ibu Detty Purnamasari. Pertama kali, dosen SOD 2 saya bukan Ibu Detty, tapi karna dosen yang itu (Maaf, saya lupa nama) bentrok sama jadwal kelas lain, akhirnya dosen SOD 2 saya digantikan oleh Ibu Detty Purnamasari. Pas tau dan bu Detty masuk ke kelas 2KA12, alamak!! tegangnya bukan main, bu Detty itu dosen yang sangat idealis, perfeksionis, konsisten, dan displin. Dan cara pembelajarannya pun berbeda dengan dosen yang lain (yang saya tau). Mungkin bu Detty ingin melihat seberapa besar mahasiswa mau belajar. hehehehe :)
Mulai mengulas materi Ibu Detty :)

1. STRUKTUR DATA
  
Struktur Data : kelompok data yang dapat dikarakterisasikan oleh organisasi serta operasi yang dapat didefinisikan.

Algorithma : Langkah untuk menyelesaikan sebuah program. Inputnya data. Algorithma harus bisa diimplementasikan ke sebuah program.

 Tipe data secara umum :
1. Tipe data  sederhana  
       - Tunggal : Integer, Real, Boolean, Karakter. 
       - Majemuk : String. 

2.  Struktur Data
        - Sederhana : Array Record.
        - Majemuk:
               ~ Linier : Linier Linked List, Stack, Queue.
               ~ Non Linier : Binary Tree, Binary Search Tree, General Tree, Tree, Graf.

  • INTEGER
         Suatu integer adalah anggota dari himpunan bilangan :
           {..., -(n+1), -n, ..., -2, -1, 0, 1, 2, ..., n, n+1, ...}
 
         Operasi dasar yang ada dalam integer yaitu : +, -, *, /, ^

-Pembagian Integer (DIV) : Sebuah integer (menghilangkan bagian pecahan dari hasil  pembagian). Contoh : 17 DIV 3 = 5
-Operasi MOD (Modulo) : Sisa dari pembagian. Contoh : 17 MOD 3 = 2
 
~Binary Operator adalah Operator yang bekerja terhadap sepasang integer (operand).
Contoh dari Binary : 2 + 2.
~Unary Operator adalah Operator yang hanya bekerja terhadap satu operand saja. 
Contoh dari Unary : Negasi.

  • REAL
      Tipe data ini jenis datanya Real. Jenis data menggunakan titik desimal (atau koma desimal). Bilangan real dimasukkan ke dalam memori komputer memakai sistem floating point.

  • BOOLEAN
       Jenis data ini disebut juga jenis Data Logika. Elemen dari jenis data ini mempunyai nilai true atau false.

  • KARAKTER
       Jenis data merupakan suatu himpunan yang terdiri atas bilangan, abjad dan simbol khusus. (0,1,...,8,9, A, B, ..., Y,Z, +, -,*,√, ...}

  • STRING
       Barisan hingga karakter yang dibentuk oleh suatu kumpulan dari karakter. Karakter yang digunakan untuk membentuk suatu string disebut alfabet.
Operasi & Operator :
1. Jumlah karakter dalam string disebut LENGTH
2. Gabungan 2 buah string disebut CONCAT
3. Sub bagian dari string disebut  SUBSTR
4. Menyisipkan string kedalam string yang lain disebut  INSERT
5. Menghapus karakter dalam string disebut DELETE

2. ARRAY

Array : Suatu himpunan hingga elemen, terurut dan homogen. 
Terurut : Elemen dapat diidentifikasikan sebagai elemen pertama, kedua, sampai dengan elemen ke-n. 
Homogen : Setiap elemen dari sebuah array haruslah mempunyai tipe data yang sama.

  • ARRAY DIMENSI SATU
        Vektor adalah bentuk yang sederhana dari array, yang merupakan array dimensi satu.
        Banyak elemen : U - L + 1

  • ARRAY DIMENSI DUA
        Suatu array yang setiap elemennya merupakan tipe data array pula.
        Banyak elemen adalah : (U1 - L1 +1) * (U2 - L2 +1)

  •  ARRAY DIMENSI TIGA
        Suatu array yang elemennya merupakan tipe data array dimensi dua.



PEMETAAN KE STORAGE : 
  • ARRAY DIMENSI SATU
       Alamat awal dari array dinyatakan dengan B (Base Location), dan setiap elemen dari array menduduki S byte. Alamat awal dari array dengan elemen ke-I adalah : B + (I -L) * S
  • ARRAY DIMENSI DUA
        Pelinieran array dimensi banyak dengan cara :

        1. ROW-MAJOR ORDER = B + (I - L1) * (U2 - L2 + 1) * S + (J - L2) * S

        2. COLUMN-MAJOR ORDER = B + (J - L2) * (U1 - L1 + 1) * S + (I - L1) * S


TRIANGULAR ARRAY (ARRAY SEGITIGA)
Triangular array dapat berupa :


1. Upper Triangular : Semua elemen di bawah diagonal utama = 0
2. Lower Triangular : Semua elemen di atas diagonal utama = 0


SPARSE ARRAY : Suatu array yang sangat banyak elemen nol-nya dikenal sebagai sparse array.
 

3. STACK
  •  LINIER LIST
           Suatu struktur  data  umum  yang  berisi  suatu  kumpulan  terurut  dari  elemen jumlah elemen di dalam list dapat berubah-ubah.
  • NULL LIST
       Suatu elemen dapat dihilangkan/dihapus dari sembarang posisi dalam linier list, dan dapat pula dimasukkan elemen baru sebagai anggota list.

Contoh

1. File, dengan elemennya berupa record

2. Buku telepon 

3. Stack 

4. Queue

5. Linear link list
  • STACK
        Stack adalah suatu bentuk khusus dari linier list, dengan operasi penyisipan dan 
 penghapusan dibatasi hanya pada satu sisinya, yaitu puncak stack (TOP).
Elemen teratas dari stack dinotasikan sebagai TOP(S).
Untuk stack S, dengan S = [S1, S2, S3, ..., ST] maka TOP(S) = ST.
Jumlah elemen di dalam stack kita notasikan dengan NOEL(S). NOEL(S) menghasilkan nilai integer.
Untuk stack S = [S1, S2, S3, ..., ST] maka NOEL (S) = T.
 
Operator penyisipan (insertion) : PUSH 
Operator penghapusan (deletion) : POP 
Operasi/Cara Kerja Stack :  LIFO  (Last  In  First  Out),  yaitu  :  yang  terakhir  masuk  yang pertama keluar.

Contoh stack : Tumpukan baki dalam cafetaria
Empat operasi dasar yang berlaku pada stack :
1. CREATE(stack)
2. ISEMPTY(stack)
3. PUSH(elemen, stack)
4. POP(stack)
CREATE 
Operator yang menunjukkan suatu stack kosong dengan nama S. 
Jadi : NOEL(CREATE(S)) =
          TOP(CREATE(S)) adalah TIDAK TERDEFINISI.
           ISEMPTY
           Operator yang menentukan apakah stack S kosong. 
           Operandnya terdiri dari type data stack.  
           Hasilnya merupakan type data Boolean.
           PUSH
           Operator yang menambahkan elemen E pada puncak stack S.
           Hasilnya merupakan stack yang lebih besar. 
           PUSH(E,S). E ditempatkan sebagai TOP(S).
 
             POP(stack)
           Operator yang menghapus sebuah elemen dari puncak stack S. 
           Hasilnya merupakan stack yang lebih kecil.
4. ANTREAN (Queue)
 
    Operasi penyisipan (insertion) hanya diperbolehkan pada salah satu sisi, yang disebut REAR, dan operasi penghapusan (deletion) hanya diperbolehkan pada sisi yang lainnya, yang disebut FRONT dari list.

Operasi/Cara Kerja Antrean : FIFO (First In First Out)
Elemen yang pertama masuk merupakan elemen yang pertama keluar.

 
Penyisipan : Insert
Penghapusan : Remove
 

Empat operasi dasar antrean, yaitu : 
1. CREATE
2. ISEMPTY
3. INSERT
4. REMOVE
 

1. CREATE (Q)
Operator yang menunjukkan suatu antrean hampa Q.
Berarti : Noel (Q) = 0
Front (Q) & Rear (Q) = tidak terdefinisi
 

2. ISEMPTY (Q)
Operator yang menunjukkan apakah antrean Q hampa.
Operand : tipe data antrean
Hasil : tipe data boolean 

ISEMPTY (CREATE (Q)) = True  


3. INSERT (E, Q)
Operator yang menginsert elemen E ke dalam antrean Q.
E ditempatkan di bagian belakang antrean.
Hasil : antrean yang lebih besar.
REAR (INSERT (E, Q)) = E
ISEMPTY (INSERT (E, Q)) = False


4. REMOVE (Q)
Operator yang menghapus elemen bagian depan dari antrean Q.
Hasil : antrean yang lebih pendek.
Pada setiap operasi, Noel (Q) berkurang 1 dan elemen ke-2
menjadi elemen terdepan.
Jika Noel (Q) = 0 maka Q = hampa
Remove (Q) = kondisi error (underflow condition)
Remove (Create (Q)) = kondisi error (underflow condition)

5. GRAPH 
Graf adalah :
    ♦ Himpunan V (Vertex) yang elemennya disebut simpul (atau point atau node atau titik)
    ♦ Himpunan E (Edge) yang merupakan pasangan tak urut dari simpul, anggotanya disebut ruas (rusuk atau sisi)
                                                     Notasi : G(V,E)
 
~ Simpul u dan v disebut berdampingan bila terdapat ruas (u,v).
~ Graf dapat pula disajikan secara geometrik, simpul disajikan sebagai sebuah titik. Sedangkan ruas disajikan sebagai sebuah garis yang menghubungkan 2 simpul.
~ Banyak simpul disebut ORDER, banyak ruas disebut SIZE dari
graf.
~ Suatu graf yang tidak mengandung ruas sejajar ataupun self-loop
disebut Graf Sederhana atau Simple Graf.
  • G R A P H B E R L A B E L
         Graf berlabel jika ruas dan atau simpulnya dikaitkan dengan suatu besaran tertentu. Jika setiap ruas e dari G dikaitkan dengan suatu bilangan non negatif d(e), maka d(e) disebut bobot atau panjang dari ruas e.
  • DERAJAT GRAF
         Derajat setiap ruas dihitung dua kali ketika menentukan derajat suatu graf, maka : Jumlah derajat semua simpul suatu graf (derajat) = dua kali banyaknya ruas graf (size graf).


6.  Pohon Binar (Binary Tree)
Pohon (Tree) adalah graf terhubung yang tidak mengandung sirkuit. Karena merupakan graf terhubung maka pada pohon selalu terdapat path atau jalur yang menghubungkan kedua simpul di dalam pohon. Pohon dilengkapi dengan Root (akar).
Sifat utama pohon berakar :
1. Jika pohon mempunyai simpul sebanyak n, maka banyaknya ruas adalah (n-1).
2. Mempunyai simpul khusus yang disebut Root (Akar), jika simpul tersebut memiliki derajat keluar ≥ 0 dan derajat masuk = 0. Simpul P merupakan root.
3. Mempunyai simpul yang disebut Leaf (Daun), jika simpul tersebut memiliki derajat keluar = 0 dan derajat masuk = 1.
4. Setiap simpul mempunyai tingkatan (level), dimulai dari root dengan level 0 sampai dengan level n pada daun yang paling bawah.
Pada contoh :
P mempunyai level 0
Q, T mempunyai level 1
R, S, U mempunyai level 2
V, W mempunyai level 3
Simpul yang mempunyai level yang sama disebut Bersaudara (Brother /Stribling)
5. Pohon mempunyai ketinggian (kedalaman / height) yaitu level tertinggi +1.
6. Pohon mempunyai berat (bobot / weight) yaitu banyaknya daun pada pohon.

Ini materi mengenai Struktur Organisasi Data 2. Dan ternyata mata kuliah Struktur Organisasi Data 2 mendapatkan Virtual Class (V-Class). Ini adalah tugas VClass Minggu ke 3 dengan format PDF. Silahkan di download

Saya juga masih mempunyai tugas kelompok membuat Video tentang Materi Algortima Djikstra. Walaupun hasil video ini tidak terlalu memusakan, tapi kelompok saya mau berusaha untuk membuat video tersebut. Dan, alhamdulillah Bu Detty menghargai hasil kerja kelompok saya. Terimakasih banyak Bu :) Silahkan dilihat, jika berminat.

NB: Terimakasih bu Detty, sudah sabar mengajar kelas kami. Kedisplinan dan Ketegasan Ibu pasti kita kenang hehehe :)

Tidak ada komentar:

Posting Komentar