KATA PENGANTAR
Puji syukur ke hadirat Tuhan Yang Maha Kuasa, yang telah memberikan rahmat-Nya
sehingga Modul Praktikum Struktur Data untuk mahasiswa/i Program Studi Teknik
Informatika Fakultas Ilmu Komputer Universitas Muslim Indonesia ini dapat diselesaikan
dengan sebaik-baiknya.
Modul praktikum ini dibuat sebagai pedoman dalam melakukan kegiatan praktikum
Struktur Data yang merupakan kegiatan penunjang mata kuliah pada Program Studi Teknik
Informatika. Modul praktikum ini diharapkan dapat membantu mahasiswa/i dalam
mempersiapkan dan melaksanakan praktikum dengan lebih baik, terarah, dan terencana. Pada
setiap topik telah ditetapkan capaian pembelajaran mata kuliah pelaksanaan praktikum dan
semua kegiatan yang harus dilakukan oleh mahasiswa/i serta teori singkat untuk memperdalam
pemahaman mahasiswa/i mengenai materi yang dibahas.
Penyusun menyakini bahwa dalam pembuatan Modul Praktikum Struktur Data ini
masih jauh dari sempurna. Oleh karena itu penyusun mengharapkan kritik dan saran yang
membangun guna penyempurnaan modul praktikum ini dimasa yang akan datang.
Akhir kata, penyusun mengucapkan banyak terima kasih kepada semua pihak yang
telah membantu baik secara langsung maupun tidak langsung.
Tim Penyusun
Tata Tertib Pelaksanaan Praktikum pada Laboratorium Terpadu Fakultas Ilmu Komputer
UMI adalah sebagai berikut:
SANKSI-SANKSI
Sanksi terhadap pelanggaran TATA TERTIB diatas, Dosen Pengampu atau Asisten laboratorium
berhak menjatuhkan sanksi, sesuai dengan aturan yang berlaku di Laboratorium
komputer Fakultas Ilmu Komputer, Universitas Muslim Indonesia (UMI) Makassar yaitu :
• Apabila praktikan merusak peralatan praktikum (Personal Computer) secara sengaja, maka
praktikan bertanggung jawab untuk mengganti kerusakan tersebut.
• Apabila praktikan tidak mematuhi dan mentaati aturan praktikum maka tidak
diperkenankan mengikuti praktikum.
• Pelanggaran point lainnya dikenakan sanksi teguran, dikeluarkan/dicoret namanya dalam
kegiatan mata kuliah praktikum (mengulang mata kuliah praktikum sesuai dengan semester
berjalan) sampai sanksi akademik.
Mengetahui,
Kepala Laboratorium
DAFTAR ISI
C. Teori Dasar
a. Stack
Struktur Stack :
struct Stack{
int elemen[MAX_STACK];
int top;
};
Proses Push:
void push(Stack &stack, int i){
stack.top++;
stack.elemen[stack.top] = i;
}
Proses pop:
void pop(Stack &stack, int &i){
i = stack.elemen[stack.top];
stack.top--;
}
b. Queue
Struktur Queue :
struct Queue{
int elemen[1000];
int rear;
int front;
int jml;
};
Proses enqueue:
void enQ(Queue &q, int i){
if(isFull(q)) return;
q.rear++;
q.jml++;
q.elemen[q.rear] = i;
}
Proses dequeue:
void deQ(Queue &q, int &i){
if(isEmpty(q)) return;
i = q.elemen[q.front];
q.front++;
q.jml--;
}
D. Kegiatan Praktikum
1. Instrument
a) Perangkat komputer
b) Sistem Operasi Windows
LABORATORIUM TERPADU - FAKULTAS ILMU KOMPUTER
7
UNIVERSITAS MUSLIM INDONESIA
MODUL PRAKTIKUM STRUKTUR DATA – 2022/2023
2. Prosedur
a) Baca dan pahami semua tahapan praktikum dengan cermat.
b) Gunakan fasilitas yang disediakan dengan penuh rasa tanggung jawab.
c) Rapihkan kembali setelah menggunakan komputer (mouse, keyboard, kursi, dll)
d) Perhatikan sikap anda untuk tidak mengganggu rekan praktikan lain.
e) Pastikan diri anda tidak menyentuh sumber listrik.
3. Studi Kasus
a. Buat program untuk implementasi stack menggunakan struktur data array dengan
kapasitas n=5. Output dapat dilihat pada Gambar di bawah. Demo program dapat
diakses di sini. Untuk lebih jelasnya, silakan buka demo program yg telah
disediakan.
b. Buat program untuk implementasi queue menggunakan struktur data array dengan
kapasitas n=5. Output dapat dilihat pada Gambar di bawah. Untuk lebih jelasnya,
silakan buka demo program yg telah disediakan.
Evaluasi Praktikum 1 :
Skor Penilaian
Sangat Kurang Cukup Sangat
No Indikator Baik (B)
Kurang (D) (C) Baik (A)
66-85
(E) <=40 41-55 55-65 >=86
1.
2.
3.
4.
Catatan Asisten :
Dosen :
Asisten 1 :
Asisten 2 :
TINGKAT KEBERHASILAN
C. Teori Dasar
1. Struktur Node :
struct Node{
int data;
Node *next;
};
9. Tampil data:
void tambahDiTengah(int i, int j){
x = head;
while(x->data != j) x = x->next;
n = new Node;
n->data = i;
n->next = x->next;
x->next = n;
}
D. Kegiatan Praktikum
1. Instrument
a) Perangkat komputer
b) Sistem Operasi Windows
c) C++ Compiler (MinGW)
d) Text Editor (Geany, Notepad++, Visual Studio Code, SublimeText, dll)
2. Prosedur
a) Baca dan pahami semua tahapan praktikum dengan cermat.
b) Gunakan fasilitas yang disediakan dengan penuh rasa tanggung jawab.
c) Rapihkan kembali setelah menggunakan komputer (mouse, keyboard, kursi, dll)
d) Perhatikan sikap anda untuk tidak mengganggu rekan praktikan lain.
e) Pastikan diri anda tidak menyentuh sumber listrik.
3. Studi Kasus
Buat program untuk implementasi single linked list. Data yang dimasukkan dalam
linked list berupa data integer. Output dapat dilihat pada Gambar di bawah.
Evaluasi Praktikum 2 :
Skor Penilaian
Sangat Kurang Cukup Sangat
No Indikator Baik (B)
Kurang (D) (C) Baik (A)
66-85
(E) <=40 41-55 55-65 >=86
1.
2.
3.
4.
Catatan Asisten :
Dosen :
Asisten 1 :
Asisten 2 :
TINGKAT KEBERHASILAN
C. Teori Dasar
1. Struktur Node :
struct Node{
int data;
Node *next;
Node *prev;
};
n->next = x->next;
x = x->next;
delete(x->prev);
x->prev = n;
D. Kegiatan Praktikum
1. Instrument
a) Perangkat komputer
b) Sistem Operasi Windows
c) C++ Compiler (MinGW)
d) Text Editor (Geany, Notepad++, Visual Studio Code, SublimeText, dll)
2. Prosedur
a) Baca dan pahami semua tahapan praktikum dengan cermat.
b) Gunakan fasilitas yang disediakan dengan penuh rasa tanggung jawab.
c) Rapihkan kembali setelah menggunakan komputer (mouse, keyboard, kursi, dll)
d) Perhatikan sikap anda untuk tidak mengganggu rekan praktikan lain.
e) Pastikan diri anda tidak menyentuh sumber listrik.
3. Studi Kasus
Buat program untuk implementasi double linked list. Data yang dimasukkan dalam
linked list berupa data integer. Output dapat dilihat pada Gambar di bawah.
Evaluasi Praktikum 3 :
Skor Penilaian
Sangat Kurang Cukup Sangat
No Indikator Baik (B)
Kurang (D) (C) Baik (A)
66-85
(E) <=40 41-55 55-65 >=86
1.
2.
3.
4.
Catatan Asisten :
Dosen :
Asisten 1 :
Asisten 2 :
TINGKAT KEBERHASILAN
C. Teori Dasar
1. Struktur Node :
struct Node{
int data;
Node *left;
Node *right;
};
queue<Node*> q;
q.push(root);
while(!q.empty()){
cout << q.front()->data << " ";
if(q.front()->left != NULL)
q.push(q.front()->left);
if(q.front()->right != NULL)
q.push(q.front()->right);
q.pop();
}
}
inOrder(root->left);
cout << root->data << " ";
inOrder(root->right);
}
postOrder(root->left);
postOrder(root->right);
cout << root->data << " ";
}
D. Kegiatan Praktikum
1. Instrument
a) Perangkat komputer
b) Sistem Operasi Windows
c) C++ Compiler (MinGW)
d) Text Editor (Geany, Notepad++, Visual Studio Code, SublimeText, dll)
2. Prosedur
a) Baca dan pahami semua tahapan praktikum dengan cermat.
b) Gunakan fasilitas yang disediakan dengan penuh rasa tanggung jawab.
c) Rapihkan kembali setelah menggunakan komputer (mouse, keyboard, kursi, dll)
d) Perhatikan sikap anda untuk tidak mengganggu rekan praktikan lain.
e) Pastikan diri anda tidak menyentuh sumber listrik.
3. Studi Kasus
Buat program untuk implementasi Binary search tree meliputi operasi: insert, search,
delete, dan binary tree traversal (level order, preorder, inorder dan postorder). Output
dapat dilihat pada Gambar di bawah.
Evaluasi Praktikum 4 :
Skor Penilaian
Sangat Kurang Cukup Sangat
No Indikator Baik (B)
Kurang (D) (C) Baik (A)
66-85
(E) <=40 41-55 55-65 >=86
1.
2.
3.
4.
Catatan Asisten :
Dosen :
Asisten 1 :
Asisten 2 :
TINGKAT KEBERHASILAN