STRUKTUR DATA Pertemuan 1 s.d 8

dokumen-dokumen yang mirip
STRUKTUR DATA Pertemuan 1 s.d 8

MATERI PRAKTIKUM STRUKTUR DATA

Tipe Data dan Operator

Struktur Data. Tumpukan : Definisi & Operasi. Pertemuan 4 PROBLEM ALGORITHM DATA IMPLEMENTATION. Pert. 4b Struktur Data - FMIPA USD

MAKALAH STRUKTUR DATA. DOSEN PEMBIMBING Nisa miftachurohmah, S.kom., M.Si PENYUSUN SITI JAMILATUL MU ADDIBAH ( )

Masukan Judul... Infotype àsebuah tipe terdefinisi yang menyimpan informasi sebuah elemen list

Integer (Bilangan Bulat) Yang dimaksud bilangan bulat adalah, -1, -2, -3, 0, 1, 2, 3, 4 dan lain lain yang bukan merupakan bilangan pecahan.

Pertemuan 7. REVIEW dan QUIS

Achmad Solichin.

Lab. Teknik Informatika Struktur Data 1

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya.

1. Tipe Data Sederhana Hanya dimungkinkan untuk menyimpan sebuah nilai data dalam sebuah variabel Ada 5 macam : int, float, double, char, boolen

Pendahuluan Struktur Data. Nisa ul Hafidhoh

Langkah Mudah Belajar Struktur Data Menggunakan C/C++

Modul Praktikum Algoritma dan Struktur Data

ALGORITMA DAN STRUKTUR DATA

STACK DAN QUEUE. Pengertian Stack Dan Queue. stack & queue. Last saved by KENKEINA Created by KENKEINA

MODUL IV STACK A. TUJUAN

STACK DAN QUEUE (Muhammad Fachrie, STMIK Amikom Yogyakarta)

Algoritma Dan Struktur Data II

PRAKTIKUM ALGORITMA & PEMROGRAMAN III MODUL_06 Stack (Tumpukan)

Algoritma Pemrograman & Struktur Data

PENGERTIAN VARIABEL, KONSTANTA DAN TIPE DATA

Tabel Informasi. Hal di atas dapat dilakukan dengan menambah dan mengambil atribut identifier yang digunakan pada program, melalui tabel informasi.

Algoritma Pemrograman & Struktur Data

PEMROGRAMAN BERORIENTASI OBJEK. Tipe Data. Budhi Irawan, S.Si, M.T

LAPORAN PRAKTIKUM RESMI QUEUE

Tipe data dasar merupakan tipe data yang disediakan oleh kompailer, sehingga dapat langsung dipakai Dalam algoritma dan pemrograman yang termasuk dala

(3) BAHAN KAJIAN (materi ajar)

Struktur Data. Pertemuan 2

STACK atau TUMPUKAN. Pertemuan 5 STACK (TUMPUKAN)

Algoritma dan Struktur Data. Ramos Somya

TIF 4201 Algoritma Dan Struktur Data

Silabus Struktur Data. Bandung 2013

STRUKTUR DATA POKOK BAHASAN - 7 STACK ( TUMPUKAN )

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya.

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya.

Struktur Data Array. Rijal Fadilah S.Si

04. Single Linked List

Tipe Data Dasar. Data bisa dinyatakan dalam bentuk konstanta atau variabel.

Chapter 1 KONSEP DASAR C

PRAKTIKUM 2. perubah (variabel), konstanta, fungsi, atau obyek lain yang didefinisikan oleh

VARIABEL, TIPE DATA DAN EKSPRESI Bab 2

MODUL PRAKTIKUM ALGORITMA DAN STRUKTUR DATA PERTEMUAN 1

*Sekumpulan elemen yang diatur secara terurut. *Linear List tidak sama dengan Connected-List

TIPE DATA ABSTRAK MENGGUNAKAN BAHASA C

Kisi-Kisi Ujian Tengah Semester Algoritma dan Pemrograman Lanjut

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN

PERTEMUAN VI POINTER 6.1 Tujuan Praktikum 6.2 Teori Penunjang Pointer

Dasar-dasar Pemrograman C DASAR PEMROGRAMAN & ALGORITMA

Pendahuluan Pemrograman Mikrokontroler

elemen Dasar Bahasa Pemrograman C

STACK (TUMPUKAN) & QUEUE (ANTRIAN) Altien Jonathan Rindengan, S.Si., M.Kom.

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

BAHASA PEMROGRAMAN C

Linked List 6.3 & 7.3 NESTED LOOP

MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA STACK

05. Double Linked List

KONSEP POINTER DAN LINKED LIST

Tipe Data, Variabel, Input/Output

PERTEMUAN 3 KONSEP TIPE DATA

Struktur Dasar Bahasa C Tipe Data Dalam bahasa C terdapat lima tipe data dasar, yaitu :

Algoritma dan Struktur data

Bahasa C-M6 By Jamilah, Skom 1

BAB VIII QUEUE (ANTRIAN)

STACK (TUMPUKAN) Secara sederhana, sebuah tumpukan bisa kita ilustrasikan seperti gambar berikut.

POINTER STACK DAN QUEUE. Institut Teknologi Sumatera

Tipe Data dan Variabel

Data bisa dinyatakan dalam bentuk konstanta atau variabel.

Algoritma Dan Struktur Data II. Queue

PRAKTIKUM ALGORITMA DAN STRUKTUR DATA MODUL KE-2 STACK DAN QUEUE

Turbo C adalah tool yang dipakai untuk membuat code program dalam bahasa C ataupun C++. Berikut adalah jendela utama Turbo C

PENGENALAN BAHASA C DAN C++

Praktikum 4. Tumpukan (Stack)

MODUL STRUKTUR DATA. Erna Kumalasari Nurnawati

Algoritma Pemrograman & Struktur Data

SOAL C++ Created by Yuli Astuti,S.Kom Copyright 2009

STRUKTUR DATA TIPE DATA DNA-STRUKTURDATA 1

A. TUJUAN PEMBELAJARAN

Algoritma dan Struktur Data. Ramos Somya, S.Kom., M.Cs.

Chapter 3.2 : Tipe, Nama dan Nilai

STACK (TUMPUKAN) Tumpukan uang koin Tumpukan kotak Tumpukan Buku. Gambar 1. Macam-macam tumpukan

ALGORITMA DAN STRUKTUR DATA ARRAY STACK DAN QUEUE

Single Linked List (1)

Algoritma Dan Struktur Data II

Bab 4 Pointer dan Struktur Data Dinamik 16 BAB IV POINTER DAN STRUKTUR DATA DINAMIK TUJUAN PRAKTIKUM TEORI PENUNJANG

SINGLE LINKED LIST (NON CIRCULAR)

Pertemuan 3. Perubah Dinamis (Dinamic variable) Suatu perubah yang akan dialokasikan hanya pada saat diperlukan, yaitu setelah program dieksekusi.

BAB 4 PENGENALAN BAHASA C

Kondisional/Pencabangan/Pemilihan. Konsep Pencabangan Sintaks Konsep if (kasus tunggal) Konsep if-else (2-3 kasus) Konsep switch (lebih dari 3 kasus)

2. Mahasiswa dapat membuat dan menggunakan array dan linked list dalam suatu kasus.

IF PEMROGRAMAN LANJUT TUGAS 1. Oleh : Andri Heryandi, M.T.

Stack. Gambar 1.1 Stack

STACK. Sistem penyimpanan data dengan mekanisme Last In First Out( LIFO).

: Mahasiswa mampu menjelaskan teknik pemrograman menggunakan Linked List. Single Linked List

P 4 Bab 3 : Dasar Pemrograman C

BAB II STACK (TUMPUKAN)

QUEUE (ANTREAN) Prinsip Antrean : FIFO (First In First Out) FCFS (First Come First Serve) Yang Tiba lebih awal Maka akan dilayani Terlebih Dahulu

Pert 1 Struktur Data (mengajarkomputer.wordpress.com)

Algoritma dan Struktur Data

Transkripsi:

STRUKTUR DATA Pertemuan 1 s.d 8 Sasaran: Meningkatkan: pemahaman pengetahuan tentang teori dasar struktur data dan penanganan data serta pembuatan algoritma dan penggunaan strukturd dalam pemrograman Materi : 1. Konsep dan Definisi - Tipe dan definisi - Operasi Data 2. Stack dan Queue - Operasi dan aplikasi Stack - Operasi dan aplikasi Queue dan Deque 3. Linked List - Konsep pointer dari Linked List - Operasi pointer dari Linked List - Jenis Linked List Single dan Double 4. Tree dan Graph - Terminologi, karakteristik dan struktur hirarkhi Tree - Terminologi, Representasi dan Traversal dari Graph Halaman 1

Modul Struktur Data Konsep dan Definisi Definisi Data Adalah fakta atau kenyataan tercatat mengenai suatu obyek Pengertian dataa ini menyiratkan variabel suatu nilai bisa dalam bentuk konstanta atau Tipe Data Tipe Data Sederhana Terstruktur Real Ordinal String Flat Integer Record Double Character array Boolean File Set Tipe data sederhana: Hanya dimungkinkan untuk menyimpan satu nilai dalam satu variabel Ada 5 macam, yaitu: 1. bilangan bulat (integer) 2. bilangan real presisi tunggal bilangan real presisi ganda 3. karakter 4. tak bertipe (unsign) 5. boolean (operator logik) Halaman 2

Tipe data terstrukrur Adalah tipe data dimana satu variabel dapat menyimpan lebih dari satu nilai data Masing masing nilai data disebut komponen. Ada 5 macam, yaitu: 1. Data String Data yang berisi sederetan karakter dimana banyaknya karakter bisa berubahubah sesuai kebutuhan Bentuk umum : char nama variabel[ukuran] Contoh : char nama[30] 2. Larik (array) dimana variabel larik hanya bisa menyimpan 1tipe data saja Bentuk umum : Tipe data nama variabel[ukuran] Contoh : float X[5] int datax[10] 3. Record terdiri dari beeberapa variabel dimana masing masing variabel bisa mempunyai tipe yang berbeda Bentuk umum : struct nama_tipe_struct tipe field 1; tipe field 2;... tipe field n; var_ struct Contoh : struck data_tanggal int tanggal; int bulan; int tahun; struct data_mhs char nama[25]; struct data_tanggal; info_mhs; Halaman 3

nama_mhs info_mhs tanggal data_tanggal bulan tahun 4. Set (himpunan) Memungkinkan suatu lokasi memori ditempati oleh satu atau lebih variabel yang tipenya bisa berlainan. 1. enumerius Bentuk umum: Union nama_union; Contoh: union unsigned int data_int; unsigned char data_char[20]; bil_x; 2. enumerius merupakan himpunan dari konstanta integer yang diberi nama Bentuk umum: enum nama_enum konstanta_1, jonstanta_2; konstanta_n; var_1, var_2; Contoh: enum manusia pria, wanita ; enum manusia jenis_kelamin; Bila jenis_kelamin diisi pria maka nilai jenis kelamin=0 dan sebaliknya bila diisi wanita nilai jenis_kelamin=1 Halaman 4

5. File File merupakan organisasi dari sejumlah record sejenis. Masing masing record terdiri dari satu atau lebih field dan field terdiri dari satu atau lebih karakter. File Record Record Field Field Char Char Tipe data Pointer Variabel pointer berisi alamat dari suatu obyek lain (yaitu obyek yang ditunjuk oleh pointer tersebut) Bentuk umum: tipe *nama_ponter Contoh: int *pa; pa = &x; ( & berarti alamat) Artinya pointer pa menunjuk alamat x Algoritma dan Pemrograman Permasalahannya adalah bagaimana suatu masalah dapat diselesaikan dengan algoritma yang tepat. Dasar dasar Algoritma: Statement elementer; dan Statement kontrol Statement elementer terdiri dari: Asignment (X=5, X=Y) Comparison Arithmatic Statement Halaman 5

Statement kontrol terdiri dari: Alternatif Pengulangan Percabangan Statement elementer: a. assignment Untuk memberikan nilai ke variabel yang telah diseklarasikan. Bentuk pernyataannya adalah Contoh: total = 100; b. comparison Untuk keperluan pengambilan keputusan diperlukan operator relasi seperti >, < dll., operasi aritmatik, operator Boolean. c. statement I/O Untuk memasukkan nilai ke komputer menggunakan: scanf(), getch() Untuk mengeluarkan nilai menggunakan: printf(), puts() STACK DAN QUEUE Stack (tumpukan) dan Queue (antrian) merupakan alokasi memory dalam bentuk array 1 dimensi atau lebih. Aplikasi penggunaan array adalah : Stack (tumpukan) Queue (antrian) Dequeue (antrian 2 pintu) Pada Stack berlaku konsep LIFO (Last In First Out), Pada Queue berlaku konsep FIFO (First In First Out), atau FCFS (First Come First Serve) Pemilihan ke 3 cara tersebut disesuaikan dengan permasalahan yang ada: STACK Adalah suatu list yang penambahan (insert) atau penghapusan (deletion), elemennya dilakukan di satu ujung (Top) Ada 3 kondisi pada stack, yaitu : Awal Top = 0 Kosong Top = 0 Penuh Top = N Halaman 6

Proses yang dapat dilakukan pada stack adalah : 1. push: untuk memasukkan data ke dalam Stack Langkah yang diperlukan cek apakah Top < N bila ya, tambahkan top dengan 1 isikan data ke stack 2. pop: mengeluarkan (delete) data dari Stack Langkah yang diperlukan : cek apakah Top masih > 0 Bila ya, copy data ke suatu variabel kurangkan Top dengan 1 Algoritma PUSH dan POP #include <stdio.h> void push(void); void pop(void); int x, top; int s[5], N=5; main() char pilih; clrbarloop; clrscr(); gotoxy(25,7); puts( coba stack ) ; gotoxy(25,10); puts( 1. push ); gotoxy(25,13); puts( 2. pop ); gotoxy(25,16); puts( 3. exit ); gotoxy(25,19); prinyf( Pilih : ); scanf( %x, &pilih); switch(pilih) case 1: printf( \n masukkan data x =; scanf( ); case 2: pop(); getch(); break; case 3: exit(0); goto clrbaarloop; push(); getch(); break; void pop(void) If (top > 0) x = s[top]; pritf ( \n\r x = %d top = %d, x, top); top = top 1; Halaman 7

else printf( \n\r stack kosong ); Soal: buat fungsi PUSH Aplikasi stack antara lain : 1. Dalam sistem operasi, pada saat aktivitas call dan return 2. Pada proses kompilasi, untuk melakukan pengecekan kelengkapan pasangan tanda kurung, kurung kotak, dll. QUEUE (antrian) Prinsip: FIFO (First In First Out) atau FCFS (First Come First Serve) Ada 2 macam pointer, yaitu: F(Front) dan R(Rear) Untuk pengambilan data menggunakan pointer F sedang untuk pemasukkan data menggunakan pointer R Bila kondisi kosong F=0 dan R=0 sedang kondisi penuh R=N maka syarat antrian adalah: F <= R Proses yang dapat dilakukan adalah: 1. INSERT, untuk memasukkan ke antrian; 2. DELETE, untuk mengeluarkan data dari antrian. Kondisi yang perlu diperhatikan adalah kondisi penuh tapi kosong yaitu F=R=N Subroutine insert: void insert(void) if ( R< N ) R = R+ 1; Q[R] = x; printf( R = %d x = %d, R, x); else printf( antrian penuh ); Soal: buat prosedur DELETE - Cek F < R - F = F + 1 - X = Q[F] - If (f=n) F=0 ; R= 0 Halaman 8