Kamis, 22 Februari 2018

STRUKTUR DATA




PENGAERTIAN STRUKTUR DATA
Struktur data adalah cara program menyimpan data sehingga data dapat digunakan secara efisien. Hampir setiap perusahaan aplikasi menggunakan berbagai jenis struktur data dalam satu atau lain cara. Postingan ini akan memberikan pemahaman tentang konsep-konsep struktur Data yang diperlukan untuk memahami kompleksitas aplikasi tingkat perusahaan dan kebutuhan algoritma, struktur data besar.
Struktur data ini adalah cara yang sistematis untuk mengatur data untuk menggunakannya secara efisien. Berikut adalah persyaratan dasar struktur data.
  1. Interface − Struktur data masing-masing memiliki antarmuka. Antarmuka merupakan operasi yang mendukung struktur data. Antarmuka yang hanya menyediakan daftar operasi didukung, jenis parameter mereka dapat menerima dan kembali jenis operasi ini.
  2. Implementasi − Implementasi menyediakan perwakilan internal struktur data. Implementasi juga menyediakan definisi dari algoritma yang digunakan dalam operasi dari struktur data.

Karakteristik Struktur Data

  • Correctness − Struktur Data implementasi harus mengimplementasikan antarmuka dengan benar.
  • Time Complexity − Waktu berjalan atau waktu eksekusi operasional dari strukturdata harus sekecil mungkin.
  • Space Complexity − Kompleksitas ruang operasi struktur data harus sesedikit mungkin.
Kebutuhan untuk struktur Data

Seperti aplikasi yang semakin kompleks dan data yang kaya, ada tiga masalah yang biasanya dihadapi.
  1. Data Search − Mempertimbangkan inventarisasi 1 million(106) item dari toko. Jika aplikasi untuk mencari item. Itu harus mencari item dalam 1 million(106) item setiap kalimemperlambat pencarian. Sebagai data tumbuh, pencarian akan menjadi lebih lambat.
  2. Processor Speed − Kecepatan prosesor meskipun yang sangat tinggi, jatuh terbatas jika data tumbuh milyar catatan.
  3. Multiple Requests − Permintaan beberapa ribuan pengguna dapat mencari data secara bersamaan pada web server, bahkan sangat cepat server gagal ketika mencari data.
Untuk mengatasi masalah tersebut, struktur data yang datang untuk menyelamatkan. Data dapat diatur dalam struktur data sedemikian rupa bahwa semuanya mungkin tidak diperlukan untuk pencarian dan data yang diperlukan dapat dicari hampir seketika.

Waktu pelaksanaan kasus

Ada tiga perkara yang biasa digunakan untuk membandingkan berbagai struktur data waktu pelaksanaan secara relatif.
  1. Worst Case − Kasus terburuk ini adalah skenario di mana data tertentu struktur operasi membutuhkan waktu maksimum dapat memakan waktu. Jika sebuah operasi waktu kasus terburuk ƒ(n) maka operasi ini akan tidak memakan waktu lebih dari ƒ(n) waktu dimana ƒ(n) mewakili fungsi n.
  2. Rata-rata − Kasus ini adalah skenario yang menggambarkan waktu eksekusi rata-rata dari operasi dari struktur data. Jika operasi ƒ(n) waktu dalam pelaksanaan operasim akan mengambil waktu mƒ(n).
  3. Best Case − Kasus terbaik ini adalah skenario yang menggambarkan waktu eksekusi yang paling mungkin dari operasi dari struktur data. Jika operasi ƒ(n) waktu dalam pelaksanaan operasi sebenarnya mungkin mengambil waktu sebagai nomor acak yang akan menjadi maksimum sebagai ƒ(n).
Basic Terminology
  1. Data − Data yang nilai atau set nilai.
  2. Data Item − Data item merujuk kepada satu unit nilai-nilai.
  3. Group Item − Item Data yang terbagi dalam sub item disebut sebagai kelompok item.
  4. Elementary Item − Item Data yang bisa dibagi disebut sebagai dasar item.
  5. Atribut dan Entity− Entitas adalah bahwa yang berisi atribut atau sifat yang dapat ditetapkan nilai-nilai tertentu.
  6. Entity Set − Entitas atribut serupa membentuk sebuah set entitas.
  7. Field - Field adalah satu unit dasar informasi mewakili atribut dari suatu entitas.
  8. Record - Record catatan adalah kumpulan bidang nilai suatu entitas.
  9. File − File adalah kumpulan catatan entiti dalam satu set entitas.

JENIS -JENIS STRUKTUR DATA

1.      Struktur Data Sederhana
A.    Array
Array adalah struktur data statik yang menyimpan sekumpulan elemen bertipe sama. 
Setiap elemen diakses secara langsung melalui indeksnya. Indeks larik harus tipe data yang menyatakan keterurutan, misalnya: integer atau karakter. Banyaknya elemen larik harus sudah diketahui sebelum program dieksekusi. Tipe elemen larik dapat berupa tipe sederhana, tipe terstruktur atau tipe larik lain. Nama lain dari Array adalah Larik, tabel, atau vektor. 

B.     Record
Record adalah kumpulan data yang terdiri dari beberapa field(isian) dengan berbagai macam tipe data.


2.      Struktur Data Majemuk

·         Linier.
1)      Stack(tumpukan) 
Stack adalah list linier yang dikenali berupa elemen puncaknya(top), aturan penyisipan dan penghapusan elemennya tertentu (penyisipan selalu dilakukan "diatas"(top) dan penghapusan selalu dilakukan pada "top"). Karena aturan penyisipan dan penghapusan semacam itu, "top" adalah satu- satunya alamat tempat terjadinya operasi. Elemen yang paling akhir ditambahkan akan menjadi elemen yang akan dihapus. Data tersusun secara LIFO.
2)      Queue(antrian) 
Queue adalah list linier yang dikenali berupa elemen pertama(head) dan elemen terakhir(tail), dimana aturan penyisipan dan penghapusan elemennya didefinisikan sebagai penyisipan selalu dilakukan setelah elemen terakhir, penghapusan selalu dilakukan pada elemen pertama dengan kondisi satu elemen dengan elemen lainnya dapat diakses melalui informasi "next".
3)      List dan Multi-List(Daftar)
List dan Multi-List adalah sekumpulan list linier yang dengan elemen yang bertype sama, yang memiliki keterurutan tertentu, yang setiap elemennya terdiri dari 2 bagian.

·         Non-Linier.

1)      Binary-Tree(Pohon biner)
Binary-Tree adalah himpunan terbatas yang mungkin kosong atau terdiri dari sebuah simpul yang disebut sebagai akar dan dua buah himpunan lain yang disjoint yang merupakan pohon biner yang disebut sebagai sub-pohon kiri(left) dan sub-pohon kanan(right) dari pohon biner tersebut.
Pohon biner merupakan type yang sangat penting dari struktur data dan banyak dijumpai dalam berbagai terapan. Karakteristik yang dimiliki oleh pohon biner adalah bahwa setiap simpul yang paling banyak hanya memiliki dua buah anak, dan mungkin tidak punya anak.
Istilah- istilah yang digunakan sama dengan istilah pada pohon secara umum.


2)      Graph(graf)
Graph  merupakan struktur data yang paling umum. Jika struktur linier memungkinkan pendefinisian keterhubungan sekuensial antar entitas data, struktur data tree memungkinkan pendefinisian keterhubungan hirarkis, maka struktur graph memungkinkan pendefinisian keterhubungan tak terbatas antara entitas data.Banyak entitas- entitas data dalam masalah- masalah nyata secara alamiah memiliki keterhubungan langsung(adjacency) secara tak terbatas. 

Referensi :
> http://heruprasetyopti.blogspot.co.id/2017/02/struktur-data-pengaertian-struktur-data.html