PENGERTIAN STRUKTUR DATA

Document Sample
PENGERTIAN STRUKTUR DATA Powered By Docstoc
					PENGERTIAN STRUKTUR DATA

 Struktur data adalah cara menyimpan
 atau merepresentasikan data di dalam
 komputer agar bisa dipakai secara efisien

  Sedangkan data adalah representasi dari
 fakta dunia nyata.

 Fakta atau keterangan tentang kenyataan
 yang disimpan, direkam atau
 direpresentasikan dalam bentuk tulisan,
 suara, gambar, sinyal atau simbol
     Secara garis besar type data dapat
     dikategorikanmenjadi :

1.   Type data sederhana
     a.   Type data sederhana tunggal, misalnya
          Integer, real, boolean dan karakter
     b.   Type data sederhana majemuk, misalnya
          String

2.   Struktur Data, meliputi
     a.   Struktur data sederhana, misalnya array dan
          record
     b.   Struktur data majemuk, yang terdiri dari:
             Linier : Stack, Queue, serta List dan Multilist
             Non Linier : Pohon Biner dan Graph
Pemakaian struktur data yang tepat
di dalam proses pemrograman akan
menghasilkan algoritma yang lebih
jelas dan tepat, sehingga
menjadikan program secara
keseluruhan lebih efisien dan
sederhana.
Struktur data yang ″standar″ yang
biasanya digunakan di bidang
informatika adalah :
  List linier (Linked List) dan variasinya
  Multilist
  Stack (Tumpukan)
  Queue (Antrian)
  Tree ( Pohon )
  Graph ( Graf )
REVIEW RECORD (REKAMAN)


 Disusun oleh satu atau lebih field. Tiap
 field menyimpan data dari tipe dasar
 tertentu atau dari tipe bentukan lain yang
 sudah didefinisikan sebelumnya. Nama
 rekaman ditentukan oleh pemrogram.

 Rekaman disebut juga tipe terstruktur.
  Contoh :
1. type Titik : record <x : real, y : real>

  jika P dideklarasikan sebagai Titik maka
  mengacu field pada P adalah P.x dan P.y.
2. Didefinisikan tipe terstruktur yang mewakili Jam
   yang dinyatakan sebagai jam (hh), menit (mm)
   dan detik (ss), maka cara menulis type Jam
   adalah :

      type Jam : record
                   <hh : integer, {0…23}
                   mm : integer, {0…59}
                   ss : integer {0…59}
                   >

  Jika J adalah peubah (variabel) bertipe Jam maka
  cara mengacu tiap field adalah J.hh, J.mm dan
  J.ss
Terjemahan dalam bahasa C :
1. type Titik : record <x : real, y : real>

  diterjemahkan menjadi :
      typedef struct { float x;
                       float y;
                     } Titik;
2. type Jam : record
                    <hh : integer, {0…23}
                    mm : integer, {0…59}
                    ss : integer {0…59}
                    >

  Diterjemahkan menjadi :
      typedef struct
                    { int hh; /*0…23*/
                      int mm; /*0…59*/
                      int ss; /*0…59*/
                    } Jam;
Terjemahan dalam bahasa JAVA :

1. type Titik : record <x : real, y :
  real>

 diterjemahkan menjadi :
    class Titik {
               float x, y;
           }
2. type Jam : record
                    <hh : integer, {0…23}
                    mm : integer, {0…59}
                    ss : integer {0…59}
                    >

  Diterjemahkan menjadi :
      class Jam {
                  int hh; /*0…23*/
                  int mm; /*0…59*/
                  int ss; /*0…59*/
             }
Tugas 1 : kerjakan saat praktikum
 Buat program menggunakan bahasa JAVA untuk
 menghitung selisih waktu dari T1 dan T2 yang
 masing-masing mengandung komponen jam,
 menit, dan detik.

 Contoh :
 dimasukkan T1   jam     :   5
                 menit   :   25
                 detik   :   30
            T2   jam     :   12
                 menit   :   40
                 detik   :   25

 maka selisih waktu = 7 jam 14 menit 55 detik