Pertemuan ke:
01 Fakultas
Sains dan Teknologi
Data dan Struktur Data
Akhir Presentasi
Terminologi
Data : segala sesuatu yg terukur yg bisa diolah menjadi informasi.
Struktur : Pengaturan atau hubungan antar elemen dalam suatu sistem.
Nilai Data : Suatu data yg dipandang sbg kesatuan tunggal (single entity).
Tipe Data merupakan kombinasi antara:
Himpunan nilai data (Set of value)
Himpunan operasi terhadap nilai-nilai data tersebut (Set of operation).
Contoh deklarasi :
int X;
char C;
Kreativitas Membangkitkan 4
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
Kelas Tipe Data
Kelas Tipe Data :
Atomik
Berstruktur / Struktur Data
Tipe Data Atomik :Suatu data yg dipandang sbg satu kesatuan tunggal dan
tdk dpt dipecah-pecah lagi (non decomposible entity).Contoh : Integer,
Char, dll.
Tipe Data Berstruktur :Suatu data yg dipandang sbg satu kesatuan tunggal
dan dpt dipecah-pecah lagi (decomposible entity).Contoh : Array, Structure,
dll.
Kreativitas Membangkitkan 5
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
HIRARKI DARI TIPE DATA
Kreativitas Membangkitkan 6
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
TIPE DATA SEDERHANA
• Hanya dimungkinkan untuk meyimpan sebuah nilai data dalam sebuah
variable.
• Ada 5 macam :
1. Bil. Bulat ( integer )
2. Bil. Real presisi-tunggal ( Float )
3. Bil. Real presisi-ganda ( Double )
4. Karakter Tak bertipe/void (Tipe data untuk Fungsi)
5. Boolean ( Operator Logika )
TIPE TOTAL KAWASAN KETERANGAN
BIT
Char 8 -128 s/d 127 Karakter
Int 16 -32768 s/d 32767 Bil Integer
Float 32 3.4E-38 s/d 3.4E+38 Bil real Presisi Tunggal
Double 64 1.7E-308 s/d 1.7E+308 Bil Real Presisi Ganda
Void 6 Tak bertipe
Kreativitas Membangkitkan 7
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
TIPE DATA BOOLEAN
Mempunyai 2 nilai : True dan False
OPERATOR Maksud
&& Dan ( And )
|| Atau ( OR )
! Tidak ( Not )
Operator Boolean biasa dipakai untuk menghubungkan ungkapan relasi
1. Tipe String
Data yang berisi sederetan karakater dimana banyaknya karakter bisa
berubah-ubah sesuai dengan kebutuhan.
Contoh : Char Nama[30];
Kreativitas Membangkitkan 9
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
2. Array
• Kumpulan dari data sejenis yang mempunyai type data
yang sama (homogenous).
• Setiap elemen array di simpan berturut-turut di lokasi
memori dan di referensikan dengan Index.
• Index array dimulai dari nol[0].
Kreativitas Membangkitkan 10
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
Deklarasi dan Akses Array
• Array satu Dimensi
• Deklarasi:
int arr[5]; Syntax:
type name[size];
• Akses:
arr[0] = 7; An array of size N have indexes
arr[1] = 2; from 0 to N-1.
arr[2] = 13;
arr[3] = 13;
arr[4] = 13;
Kreativitas Membangkitkan 11
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
Deklarasi dan Akses Array
• Array Dua Dimensi
• Deklarasi:
int arr[3][6]; Syntax:
type name[size1][size2];
• Akses:
•The first index of array ranged
arr[0][2] = 2; from 0 to size1 – 1.
arr[2][1] = 9; •The second index of array ranged
from 0 to size2 – 1.
arr[1][5] = 13;
arr[2][4] = 10;
Kreativitas Membangkitkan 12
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
Deklarasi dan Akses Array
• Array Multi Dimensi
• Deklarasi:
int arr[4][3][7][10]; Syntax:
type name[size1][size2][size3][...];
• Akses: •The first index of array ranged from 0 to
size1 – 1.
arr[0][2][2][9]= 2; •The second index of array ranged from 0 to
arr[2][1][6][0]= 9; size2 – 1.
•The third index of array ranged from 0 to
arr[3][0][0][6]= 13; size3 – 1.
•and so on.
arr[2][1][3][8]= 10;
Kreativitas Membangkitkan 13
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
Menyimpan Nilai Array
Kreativitas Membangkitkan 14
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
Menyimpan Nilai Array
• Initialization of Arrays
Example: int marks[5] = {90, 82, 78, 95, 88};
• Inputting Values
Example: int i, marks[10];
for (i=0; i<10; i++)
scanf(“%d”, &marks[i]);
• Assigning Values
Example: int i, arr1[10], arr2[10];
for(i=0; i<10; i++)
arr2[i] = arr1[i];
Kreativitas Membangkitkan 15
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
Operasi Array
• Berikut beberapa Operasi yang bisa dilakukan array:
Traversal
Insertion
Searching
Deletion
Merging
Sorting
Kreativitas Membangkitkan 16
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
3. Record / Class di Java
Terdiri dari beberapa variabel yang terstruktur dan masing-masing
variabel bisa mempunyai tipe yang berbeda.
Contoh :
// Di C++
Struct Person {
char firstName[20];
char lastName[20];
int age;
// Di Java
};
public class Person {
public String firstName;
public String lastName;
public int age;
}
Kreativitas Membangkitkan 17
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
4. Set ( himpunan )
• Union
Memungkinkan suatu lokasi memori ditempati oleh dua atau lebih variabel yang
tipenya bisa berlainan.
Contoh :
Union
{ unsigned int Angka;
unsigned char Huruf[12] } bil_X
•Enumerasi
Merupakan himpunan dari konstanta integer yang diberi nama.
Contoh :
enum manusia {pria,wanita};
enum manusia jns_kelamin;
jika jns_kelamin diisi pria maka nilai jns_kelamin=0 dan sebaliknya jika
wanita nilai=1
Kreativitas Membangkitkan 18
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
5. File
• Merupakan organisasi dari sejumlah record sejenis.
• Masing- masing record dapat terdiri dari satu atau beberapa field dan setiap
field terdiri dari satu atau beberapa karakter.
Kreativitas Membangkitkan 19
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
PENGELOLAAN MEMORI
• Dapat secara STATIS atau DINAMIS
• Secara STATIS
Menempati lokasi memori yang tetap(fixed size), tidak dapat dikembangkan
atau diciutkan.
Misal : array
Alamat memori menjadi kunci array
• Secara DINAMIS
Menempati lokasi memori dimana dapat dikembangkan atau diciutkan
sesuai dengan kebutuhan.
Pengelolaan memori secara dinamis(dynamic address) ditunjukkan oleh
pointer.
Kreativitas Membangkitkan 20
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
STRUKTUR DATA
• Struktur data adalah pengaturan data, baik dalam memori komputer atau
pada penyimpanan disk.
• Beberapa Contoh yang termasuk Struktur Data :
– Arrays
• Linked lists
• Queues
• Stacks
• Binary trees
• Hash tables
Kreativitas Membangkitkan 21
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
Types of Data Structure
• Arrays
– A collection of similar data elements
– Data elements have the same data type
Kreativitas Membangkitkan 22
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
Types of Data Structure
• Linked Lists
– A very dynamic data structure in which the elements can be
added to or deleted from anywhere at will
– Each element is called a node
Kreativitas Membangkitkan 23
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
PENGELOLAAN MEMORI
Kreativitas Membangkitkan 24
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
Types of Data Structure
• Queue
– The element that was inserted first is the first one to be taken
out
– The elements in a queue are added at one end called the rear
and removed from the other end called the front
Kreativitas Membangkitkan 25
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
Types of Data Structure
• Stacks
– Stacks can be represented as a linear array
– Every stack has a variable TOP associated with it
– LIFO (Last In First Out) / FILO (First In Last Out)
Kreativitas Membangkitkan 26
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
Types of Data Structure
• Binary Trees
– A data structure which is defined as a collection of elements
called the nodes
– Every node contains a left pointer, a right pointer, and a data
element
Kreativitas Membangkitkan 27
<@adt_lotu
Menu
Menu Akhiri >
Akhiri
Inovasi
s
Terima Kasih
Aditiya Hermawan, M.Kom