TKPD ( Struktur Data )


Nama: Zaki Ahmad Sugiyono

Kelas: X.1


 Struktur Data

Struktur Data adalah cara menyimpan  dan mengatur data secara  secara terstruktur pada sistem komputer atau pangkalan  data ( Database ) sehingga lebih mudah di akses
Data dapat dikategorikan menjadi
1) Data Sederhana Tunggal
     > Integer ( angka ) bit.bulat 1,2,3dat
     > Real/float ( pecahan desimal ) 0,25 , 0,13
     > Double float    angka 
     > Boolean    true,false 1,0
     > Character
     > Vercharacter
2) Data Sederhana Majemuk 
     > String

Perbedaan floating dan double 
Penyimpanan akses angka maksimal terletak pada double floating

( huruf,angka,karakter,,simbol )

-Boolean
Tipe data boolean ialah tipe data yang meiliki dua nilai yaitu benar ( true )  atau salah ( false). Tipe data ini sangat penting dalam  mengambil keputusan suatu kejadian tertentu.
-String
Tipe data string terdiri dari kumpulan karakter dengan panjang. contohnya jika program ingin menulis  " Halo dunia saya sedang belajar pemograman dasar ".
-Integer
Jenis tipe data integer dapat di artikan sabagai tipe data bilangan bulat. yang berati program yang mengunakan tipe data integer tidak mendukung mengunakan huruf,bilangan yang digunakan juga haruslah bulat ( tidak menggunakan pecahan desimal )
-Floating Point
Floating Point atau real number adalah tipe data yang memiliki bagian decimal diakhir angka tipe data float cocok digunakan untuk variabel yang akan diisikan pecahan decimal.
-Double Floating Point
Tipe data yang sama dengan floating point namun bedanya adalah penyimpanan angka maksimal lebih besar dari pada float, otomatis double juga akan membutuhkan memori yang besar. 
-Character dan Varchar
tipe data char ini merupakan salah satu tipe data yang memungkinkan kita untuk  memesan memori berformat text (  huruf,angka,dan simbol ) dengan karakter tunggal, dibutuhkan 1byte atau 8bit ruang didalam memori agar dapat menyimpan sebuah karakter.

Perbedaan Char Dan Varchar
1.jumlah maksimal char dapat menampung 65,535 karakter varchar hanya menampung 255 karakter
2. ukuran penyimpanan kalo char jika kamu membuat sebuah kolom mengunakan char lalu menentukan karakter hanya yang bisa di input hanya 20n karakter kemudian kamu menginput 4 karakter saja maka yang tersimpan didata base akan akan tetap 20 karakter sesuai karakter yang di tentukan sedangkan varchar jika kamu menetapkan 20 karakter  kemudian kamu hanya menginput 4 character maka yang terhitung hanya 4 karakter yang kamu input

Soal
1. Tipe data untuk sebuah bilangan bulat adalah?
2. Tipe data yang memiliki ukuran 32 bit adalah?
3. tipe data integer memiliki ukuran?
4. disajikan pertanyaan dengan jawaban ya/tidak
     " apakah indonesia itu negara demokrasi?
       termasuk dalam tipe  data?
5. Tipe data yang cocok untuk menulis riwayat hidup seseorang adalah?

JAWABAN
1. tipe dan integer
2. integer dan float 
3. 32 bit
4. tipe dan boolean
5. string


Tipe-tipe Data



1. Array

ilustrasi struktur data array

Tipe Array mempunyai kumpulan elemen yang jaraknya saling berdekatan. Array dapat membantu seseorang untuk mencari data secara acak hanya menggunakan indeksnya. 

Kapasitas elemen yang dapat dialokasikan pada tipe array bersifat statis. Jika Anda ingin menyisipkan elemen baru ke array, maka harus membuat array baru dengan ukuran yang lebih besar. Sebaliknya, jika ingin menghapus elemen tertentu, Anda harus membuat array baru dengan ukuran yang lebih kecil.

Selain itu, array juga memungkinkan Anda untuk menyimpan beberapa data dengan jenis yang sama dalam satu nama. Tipe array biasa digunakan untuk membangun struktur data, seperti vektor dan matriks.

Keunggulan tipe array:

  • Bisa digunakan sebagai implementasi tipe lainnya, seperti queue dan stack.
  • Proses pencarian data bisa dilakukan lebih cepat.

Kekurangan tipe array:

  • Penambahan dan pengurangan data membutuhkan waktu yang lebih lama karena tipe array menampung data secara berurutan.

2. Linked List

ilustrasi linked list

Linked list adalah struktur data yang terdiri dari urutan data linier yang dihubungkan satu sama lain. Saat menggunakan tipe linked list, Anda harus mengakses data secara manual. Hal ini karena Anda tidak bisa mencari data dengan sistem acak.

Tipe linked list terbagi menjadi tiga jenis, yaitu singly linked list, doubly linked list, dan circular linked list. Ketiganya dapat dibedakan dari proses traversal atau proses kunjungan ke setiap node dalam satu waktu. 

Keunggulan tipe linked list:

  • Ukuran lebih dinamis.
  • Alokasi penggunaan memori bisa Anda sesuaikan dengan kebutuhan.
  • Penambahan atau pengurangan data lebih cepat.

Kekurangan tipe linked list:

  • Menguras memori yang lebih besar.
  • Tidak bisa kembali ke node sebelumnya (reverse traversal), kecuali pada jenis doubly linked list.
  • Proses traversal lebih panjang karena tidak langsung mengakses data dengan indeks.

3. Stack

ilustrasi sruktur data stack

Stack adalah tipe struktur data yang linier dan mengikuti urutan tertentu. Adapun urutan yang digunakan adalah LIFO (Last In First Out) atau FILO (First In Last Out). Kedua istilah tersebut artinya sama, yaitu data yang terakhir masuk akan menjadi data yang keluar pertama kali. Sebaliknya, data yang pertama masuk akan menjadi data yang keluar terakhir.

Keunggulan tipe stack:

  • Dapat mengelola data secara efisien.
  • Bisa membersihkan objek secara otomatis.
  • Dapat mengontrol memori dengan mandiri.

Kekurangan tipe stack:

  • Kapasitas memori yang sangat terbatas.
  • Kemungkinan terjadi overflow ketika jumlah objek terlalu banyak.
  • Tidak dapat mengakses data secara acak.

4. Queue

ilustrasi queue

Queue adalah tipe struktur data linear yang mengikuti urutan tertentu, yaitu FIFO (First In First Out). Jadi, data yang masuk pertama kali adalah data yang pertama kali diambil. Analogi sederhana yang menggambarkan tipe ini adalah orang yang sedang mengantre.  Siapa yang datang pertama, itulah yang dilayani terlebih dulu.

Keunggulan tipe queue:

  • Data yang masuk akan dilayani sesuai urutannya.
  • Proses antrean data lebih cepat dan optimal.
  • Menangani beberapa tipe data sekaligus.

Kekurangan tipe queue:

  • Jika waktu pelayanan habis, maka data yang terakhir masuk tidak bisa dilayani.
  • Proses yang rumit saat harus menambah atau menghapus elemen dari tengah.
  • Butuh waktu lama untuk mencari antrean.

5. Tree

Ilustrasi tipe struktur data tree

Tree adalah tipe struktur data yang memiliki bentuk seperti pohon. Tipe tree efisien untuk menyimpan data secara hierarkis karena disusun dalam berbagai level. Jadi, tipe ini sering dianggap sebagai kumpulan node yang saling dihubungkan.

Setiap node bisa berisi beberapa data atau link dari node lainnya. Beberapa istilah yang ada pada tipe tree antara lain:

  • Rootnode yang berada di paling atas..
  • Child node: Turunan dari setiap node.
  • Parent nodenode yang berisi sub-node.
  • Siblingsnode yang berasal dari parent node yang sama.
  • Leaf nodenode yang tidak memiliki turunan lagi. 

Keunggulan tipe tree:

  • Proses mencari data bisa dilakukan dengan cepat.

Kekurangan tipe tree:

  • Membutuhkan waktu yang lebih lama untuk memasukkan data karena harus menyesuaikan dengan urutan nilainya.

6. Graph

ilustrasi tipe struktur data graph

Graph adalah tipe yang berisi beberapa node yang saling terhubung. Node pada tipe graph disebut sebagai simpul. Jadi, setiap garis akan saling menghubungkan dua simpul. Biasanya tipe ini digunakan untuk menunjukkan jaringan tertentu. Contohnya seperti jaringan telepon.

Tipe graph terbagi menjadi dua jenis jenis, yaitu directed graph dan undirected graph.  Directed graph artinya setiap garis akan terhubung ke semua simpul. Sedangkan undirected graph artinya tidak semua simpul akan terhubung dengan garis. Jika sebuah simpul tidak terhubung dengan simpul lainnya, maka disebut dengan isolated vertex

Keunggulan tipe graph:

  • Dapat membantu memeriksa hubungan antar node dengan cepat.
  • Cocok digunakan untuk grafik yang tidak mengandung banyak node.

Kekurangan tipe graph:

  • Membutuhkan waktu lama untuk memodifikasi data.

7. Hash Table

ilustrasi hash table

Hash table adalah tipe yang digunakan untuk menyimpan data secara asosiatif. Tipe ini akan menyimpan data dalam format array. Hal ini memungkinkan Anda untuk mengakses data dengan cepat karena cukup menggunakan indeksnya saja.

Operasi utama yang digunakan dalam hash table adalah search (untuk mencari elemen), insert (untuk menyisipkan elemen), dan delete (untuk menghapus elemen). Contoh penggunaan tipe hash table adalah mencari data nama dan nomor telepon.

Keunggulan tipe hash table:

  • Daripada tipe lainnya, kadang penggunaan hash table lebih efisien untuk mencari data sehingga sering dipakai di software untuk pengindeksan basis data.
  • Mudah melakukan sinkronisasi.

Kekurangan tipe hash table:

  • Kemungkinan bentrokan data (collision) sangat besar sehingga menjadi tidak efisien.





10 Tipe Data yang Sering Dipakai Programmer




1. Integer

Tipe data pertama yang akan kamu temukan dalam dunia pemrograman adalah integer.
Integer (int.) merupakan data type berbentuk bilangan bulat atau numerik yang umumnya digunakan untuk menyimpan angka tanpa komponen pecahan dengan rentang angka -707, 0, hingga 707.
Menurut BBC, data type ini mencakup semua bilangan bulat atau bilangan yang tidak memiliki komponen pecahan.
Integer juga biasa berisi bit-bit yang ditafsirkan sebagai kekuatan signifikansi sederhana, seperti 2^0, 2^1, 2^2 dan seterusnya.
Bilangan bulat pendek yang biasanya disimpan dengan integer memiliki panjang 16 bit atau sampai 2^16 atau 65.536.
ukuran 4 byte, jangkauan -2,147,483,648 hingga 2,147,483,647.

2. Floating point

Tipe data selanjutnya yang sering digunakan untuk keperluan komputasi teknis adalah floating point.
Ia merupakan jenis data type numerik yang digunakan untuk menyimpan angka yang mungkin memiliki komponen pecahan seperti nilai moneter (707.07, 0.7, 707.00).
Teknologi satu ini juga mengacu pada penggunaan dua kali lipat jumlah penyimpanan relatif dengan metode angka dalam kode, seperti pada kalkulator.
Tak hanya itu, ada beberapa jenis floating point dalam dunia programming, seperti float presisi tunggal, float presisi ganda, dan float presisi quadruple.
Masing-masing jenis dibedakan sesuai banyaknya penggunaan total bit, dari 24 bit, 32 bit, 53 bit, hingga yang terbesar adalah 128 bit.
Tipe data floating point dideklarasikan dengan kata “float” dan membutuhkan 4 byte memori. Contoh tipe data floating point adalah nilai “0,5”, “3,14”, dan “999,99”.

3. Character (Char)

Melansir Rebus Communitycharacter merupakan tipe data yang dimanfaatkan untuk menyimpan satu huruf, angka, tanda baca, simbol, atau space kosong.
Umumnya, ia juga digunakan pada berbagai bahasa pemrograman di banyak komputer modern.
Character dimanfaatkan untuk menyimpan karakter alfabet dan menampilkan masing-masing karakter menggunakan kode numerik kecil.
char. Sebenarnya tipe data ini digunakan untuk menyimpan karakter dalam kode ASCII, tetapi dapat juga digunakan untuk menyimpan integer dari 0 sampai 255. short int, ukuran 2 byte, jangkauan -32,768 sampai 32,767int, ukuran 4 byte, jangkauan -2,147,483,648 hingga 2,147,483,647.

4. Boolean

Boolean adalah jenis tipe data selanjutnya yang perlu kamu kuasai sebelum terjun ke dunia pemrograman.
Jenis data type ini biasanya digunakan untuk mewakili nilai yang benar dan salah dalam data. 
Umumnya, nilai yang salah (false) dan benar (true) direpresentasikan dengan angka 0 (false) dan 1 (true).
Boolean sendiri hanya bisa merepresentasikan dua nilai dengan pertimbangan seperti hubungan angka yang lebih kecil atau lebih besar.
Besarnya memori yang dibutuhkan tipe data bool yaitu 1 byte atau 8 bit. Pada contoh program diatas, kita menggunakan 2 buah variabel yaitu variabel angka dengan tipe data integer, dan variabel hasil dengan tipe data boolean.

5. Array

Array adalah tipe data berbentuk daftar yang mampu mengarsip sejumlah elemen dalam urutan tertentu dari seluruh data yang serupa. 
Jenis data type ini memiliki banyak elemen atau nilai struktur data yang diambil serta diterapkan menggunakan indeks integer seperti 0, 1, 3, 4, dan seterusnya.
Sebagai contoh, program aplikasi pengukur kalori dirancang dengan menyimpan lebih dari satu elemen dalam bentuk jenis olahraga yang dilakukan. 
Dalam variabel yang berbentuk jenis olahraga ini akan diindeks empat nilai berupa 0 (bola basket), 1 (renang), 3 (jogging), dan 4 (bersepeda).
Berdasarkan hal tersebut, panjang array adalah 4 karena mencakup empat elemen olahraga yang berbeda.
Array statis mempunyai ukuran tetap dan dideklarasikan dengan menyebut ukurannyaArray dinamis dapat berubah ukurannya dan dideklarasikan tanpa menyebut ukurannya.

6. String

Jenis tipe data lainnya yang sering dimanfaatkan dalam dunia programming adalah string.
Menurut Amplitudestring merupakan jenis data type yang sering dianggap paling populer.
Ia adalah kumpulan dari urutan karakter dan data yang paling umum digunakan untuk menyimpan teks.
Selain itu, string juga dapat menyertakan angka dan simbol, namun ia akan selalu diperlakukan sebagai teks.
Sebagai contoh, nomor telepon biasanya disimpan sebagai string (+1-999-666-3333), tetapi, ia juga dapat disimpan sebagai bilangan bulat (9996663333).

7. Enumerated atau enum

Tipe data ini mengandung sekumpulan konstanta, yang berarti nilainya bisa ditentukan oleh dirimu sendiri.

Tentunya, enumerated data tergolong sebagai tipe data bentukan.

Ada pun nilai dari jenis data enumerated dapat berbentuk teks maupun numerik.

Sebagai contoh, kamu bisa membuat data type nama hari yang berbentuk seperti ini;

enum hari {SENIN, SELASA, RABU, KAMIS, JUMAT, SABTU, MINGGU}

Di sini, konstanta tidak diberi nilai yang mendampinginya. Hal ini otomatis membuat setiap konstanta yang terkandung dalam enum hari akan bernilai seperti ini;

  • SENIN = 0
  • SELASA = 1
  • RABU = 2
  • KAMIS = 3
  • JUMAT = 4
  • SABTU = 5
  • MINGGU = 6

8. Date

Data type ini menyimpan tanggal kalender dengan informasi programming lainnya.
Date adalah kombinasi antara bentuk integer dan numerik.
Karena date biasanya merupakan nilai integer, beberapa program bisa menyimpan operasi matematika dasar seperti menghitung hari sebelum atau setelah event tertentu.

9. Nothing

Menurut Indeed, tipe data ini menunjukkan bahwa terdapat sebuah kode yang tidak memiliki nilai. Hal tersebut menunjukkan bahwa;

  • ada kode yang tertinggal
  • seorang programmer salah memulai kode
  • ada nilai yang tidak sesuai dengan logika yang ditentukan

Jenis data ini biasanya juga disebut sebagai nullable.

10. Void

Seperti data type sebelumnya, void memberi tahu programmer bahwa ada nilai yang tidak bisa diproses kode.
Data type ini memberi tahu user bahwa kode tidak bisa memberi sebuah respons.
Biasanya, programmer akan mendapatkan data type ini di tahap awal system testing ketika belum ada respons yang diprogram untuk langkah selanjutnya.

Komentar