Mar
01
2016
0

Data Structures Pertemuan 1

Dalam istilah ilmu komputer, sebuah struktur data adalah cara penyimpanan, penyusunan dan pengaturan data di dalam media penyimpanan komputer sehingga data tersebut dapat digunakan secara efisien.

Dalam teknik pemrograman, struktur data berarti tata letak data yang berisi kolom-kolom data, baik itu kolom yang tampak oleh pengguna (user) atau pun kolom yang hanya digunakan untuk keperluan pemrograman yang tidak tampak oleh pengguna. Setiap baris dari kumpulan kolom-kolom tersebut dinamakan catatan (record). Lebar kolom untuk data dapat berubah dan bervariasi. Ada kolom yang lebarnya berubah secara dinamis sesuai masukan dari pengguna, dan juga ada kolom yang lebarnya tetap. Dengan sifatnya ini, sebuah struktur data dapat diterapkan untuk pengolahan database (misalnya untuk keperluan data keuangan) atau untuk pengolah kata (word processor) yang kolomnya berubah secara dinamis. Contoh struktur data dapat dilihat pada berkas-berkas lembar-sebar (spreadsheet), pangkal-data (database), pengolahan kata, citra yang dipampat (dikompres), juga pemampatan berkas dengan teknik tertentu yang memanfaatkan struktur data

Struktur data terdiri dari:

  1. Static memory allocation (array)
  2. Dynamic memory allocation (linier dan non linier)

Contoh struktur data yang biasa digunakan:

Array

Linked list

Queue

Stacks

binary tree

  • ARRAY

-bersifat homogen (memilki tipe data yang sama)

-merupakan kumpulan data yang sejenis

-bisa diakses dengan mudah (contoh: nama[1])

-indeksnya dimulai dari nol “0”

-array juga memiliki alamat yang saling bersebelahan

 

  • Array Satu Dimensi seperti halnya variabel biasa, array juga harus didefinisikan sebelum ia dapat digunakan. Untuk mendefinisikan array : TipeData namaArray [ukuran]; Contoh : string namaPemain[9]; Perlu diingat bahwa ukuran array adalah max index + 1. Hal ini dikarenakan index selalu dimulai dari nol.
  • Array Dua Dimensi, Array dapat dibuat berdimensi dua, dimana array ini mempunyai dua buah index / subscript. Sama seperti array dimensi satu, array dua dimensi juga merupakan kumpulan elemen-elemen yang bertipe data sama dengan satu nama variabel, tetapi terdiri dari dua index. Contoh : int posisi [3][4]; int tipe data array posisi variabel, nama array [3] index (menyatakan jumlah baris) [4] index (menyatakan jumlah kolom)

Storing Array Values

  • Initialization of Arrays

Contoh:  int marks[5] = {90, 82, 78, 95, 88};

  • Inputting Values

Contoh:  int i, marks[10];

for (i=0; i<10; i++)

scanf(“%d”, &marks[i]);

  • Assigning Values

Contoh:  int i, arr1[10], arr2[10];

for(i=0; i<10; i++)

arr2[i] = arr1[i];

Operations in Array

  • Traversal
  • Insertion
  • Searching
  • Deletion
  • Merging
  • Sorting
  • Pointer

Pointer adalah sebuah variabel yang menyimpan alamat dari variabel lain.

Terdiri dari 2 operators penting di pointer adalah:

  • & the address operator
  • * the dereferencing operator
  • Linked list

Linked list adalah sejumlah simpul (node) yang dikaitkan dengan simpul yang lain dengan bantuan pointer dalam suatu urutan tertentu. Suatu linked list dikatakan single linked listapabila hanya ada satu pointer yang menghubungkan setiap node (satu arah “next”).

index

  • Queue

 

Queue / Antrian adalah suatu kumpulan data yang mana penambahan elemen hanya bisa dilakukan pada satu ujung (disebut dengan sisi belakang atau tail/rear) dan penghapusan atau pengambilan elemen dilakukan lewat ujung lain (disebut dengan sisi depan atau head/front). Antrian menggunakan prinsip Pertama Masuk Pertama Keluar – First In First Out (FIFO). Dengan kata lain urutan masuk sama dengan urutan keluar. Antrian banyak dijumpai dalam kehidupan sehari-hari. Mobil-mobil yang mengantri digerbang tol untuk membeli karcis tol; orang-orang yang mengantri di loket untuk membeli karcis film juga membentuk antrian. Elemen yang pertama kali masuk ke antrian akan keluar pertama kalinya. DEQUEUE adalah mengeluarkan satu elemen dari suatu antrian. Terdapat satu buah pintu masuk di suatu ujung dan satu buah pintu keluar di ujung satunya sehingga membutuhkan variabel Head dan Tail.

  • Stack

 

Stack dapat diartikan sebagai tumpukan dari benda atau data yang seolah-olah diletakkan di atas data yang lain dimana data yang pertama kali masuk akan terakhir. Secara sederhana sebuah stack bisa digambarkan sebagai tumpukan buku yang disimpan dengan cara ditumpuk keatas. Dimana buku yang pertama kali disimpan atau ditumpuk ada di paling bawah dan yang selanjutnya ditumpuk diatasnya. Dan ketika kita melakukan pengambilan buku ototmatis buku yang terkahir ditumpuk atau disimpan terakhir akan mejadi yang pertama diambil, istilah ini kemudian disebut FILO (First In Last Out) dan bertambah atau berkurangnya data melalui satu ujung yang sama yaitu ujung atas tumpukan (Top of Stack).

  • Binary Tree

 

Dalam ilmu komputer, sebuah pohon biner (binary tree) adalah sebuah pohon struktur data di mana setiap simpul memiliki paling banyak dua anak. Secara khusus anaknya dinamakan kiridan kanan. Penggunaan secara umum pohon biner adalah Pohon biner terurut, yang lainnnya adalah heap biner.

Written by argadityarf in: Uncategorized |

Powered by WordPress. Theme: TheBuckmaker. Zinsen, Streaming Audio