Thursday, November 10, 2016

Apa itu struktur data? Programmer atau Software Engineering Wajib Tahu!


Sebelum menjadi programmer yang handal, pastikan bahwa teori kalian cukup kuat untuk sebuah programming. Ini berdasarkan pengalaman yang dialami banyak programmer yang dilema ketika ditanya teori sebuah pemrograman. Begitu pentingnya konsep dalam sebuah programming, karena kalian akan ditanya ketika di test oleh perusahaan yang berskala multinasional.
Kita akan belajar hal paling dasar dalam sebuah programming dan paling sering ditanya ketika kita interview ataupun test untuk pemrograman yaitu Struktur Data  atau Data Structure.
Struktur data yaitu cara penyimpanan, penyusunan dan pengaturan data pada media penyimpanan di sebuah komputer, sehingga data yang disimpan, disusun atau diatur digunakan secara efisien. Jika kita analogikan sebuah air yang akan kita simpan pada sebuah gelas, tentu bisa berbagai macam cara. Bisa dengan menuangkan langsung ke gelas, menumpahkanya atau meneteskan airnya.
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.

Apa Kegunaanya?
Pemakaian struktur data yang tepat di dalam proses pemrograman akan menghasilkan algoritma yang lebih jelas dan tepat, sehingga menjadikan program secara keseluruhan lebih efisien dan sederhana.

Jenis Struktur Data
1.     Struktur Data Sederhana
1.     Array(Larik)
Larik adalah struktur data statik yang menyimpan sekumpulan elemen yang bertipe sama. Setiap elemen diakses 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 array adalah Larik, tabel, atau vektor.

2.     Record(Catatan)
ADT adalah definisi tipe dan sekumpulan primitif (operasi dasar) terhadap tipe tersebut. Tipe diterjemahkan menjadi tipe terdefinisi dalam bahasa pemrograman yang bersangkutan.

2.     Struktur Data Majemuk
1.     Linier
1.     Stack(Tumpukan) adalah list linier yang dikenali elemen puncaknya (top), aturan penyisipan dan penghapusan elemennya tertentu (penyisipan selalu dilakukan “di atas” (top), penghapusan selalu dilakukan pada top). Karena aturan penyisipan dan penghapusan semacam itu, top adalah satu-satunya alamat tempat terjadi operasi. Elemen yang ditambahkan paling akhir akan menjadi elemen yang akan dihapus. Dikatakan bahwa elemen stack akan tersusun secara LIFO (Last In First Out).

2.     Queue (antrian) adalah list linier yang dikenali elemen pertama (head) dan elemen terakhirnya (tail); Aturan penyisipan dan penghapusan elemennya disefinisikan sebagai penyisipan selalu dilakukan setelah elemen terakhir, penghapusan selalu dilakukan pada elemen pertama; Satu elemen dengan elemen lain dapat diakses melalui informasi next.

3.     List dan Multi-List (Daftar) adalah sekumpulan elemen bertipe sama, yang mempunyai keterurutan tertentu, yang setiap elemennya terdiri dari 2 bagian. sebuah list linier dikenali dengan (1) elemen pertamanya, biasanya melalui alamat elemen pertama yang disebut (first); (2) Alamat elemen berikutnya (suksesor), jika kita mengetahui alamat sebuah elemen, yang dapat diakses melalui field next; (3) Setiap elemen mempunyai alamat, yaitu tempat elemen disimpan dapat diacu. Untuk mengacu sebuah elemen, alamat harus terdefinisi. Dengan alamat tersebut informasi yang tersimpan pada elemen list dapat diakses; (4) Elemen terakhirnya.

2.     Non-Linier
1.     Binary Tree (Pohon Biner)
Sebuah 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 tipe yang sangat penting dari struktur data dan banyak dijumpai dalam berbagai terapan. Karakteristik yang dimiliki oleh pohon biner adalah bahwa setiap simpul 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)
Merupakan struktur data yang paling umum. Jika struktur linier memungkinkan pendefinisian keterhubungan sekuensial antara 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 demikian. Contoh: informasi topologi dan jarak antar kota-kota di pulau Jawa. Dalam masalah ini kota X bisa berhubungan langsung dengan hanya satu atau lima kota lainnya. Untuk memeriksa keterhubungan dan jarak tidak langsung antara dua kota dapat diperoleh berdasarkan data keterhubungan-keterhubungan langsung dari kota-kota lainnya yang memperantarainya. Representasi data dengan struktur data linier ataupun hirarkis pada masalah ini masih bisa digunakan namun akan membutuhkan pencarian-pencarian yang kurang efisien. Struktur data graph secara eksplisit menyatakan keterhubungan ini sehingga pencariannya langsung (straightforward) dilakukan pada strukturnya sendiri.





Saturday, August 20, 2016

Mau Sukses? Yuk Belajar Dari 11 Kata Kata Bijak Ini


Sebuah tulisan yang mengandung kata kata bijak bisa mengubah hidup seseorang. Anda ingin sukses? Mungkin ini saatnya Anda meresapi kata-kata bijak berikut ini.
Sukses adalah sebuah nasib baik yang selalu ingin dikejar. Secara umum, kesuksesan dilihat dari berlimpahnya materi dan betapa dikaguminya diri seseorang. Tetapi, tiap-tiap manusia memiliki anggapan mengenai kesuksesannya masing-masing yang unik. Walaupun berbeda-beda anggapan, setiap kesuksesan tidak akan bisa tercapai tanpa usaha.
Heraclitus, salah seorang filsuf Yunani kuno, pernah menyebutkan bahwa “karakter adalah nasib”. Untuk menggapai nasib baik, seseorang harus memiliki karakter yang baik. Maka, untuk mencapai kesuksesan, seseorang harus memiliki karakter yang sesuai. Pada akhirnya, pengolahan karakter adalah sesuatu yang harus dilakukan sehingga seseorang bisa menggapai kesuksesan.
Apakah Anda ingin sukses? Jika iya, Anda perlu memikirkan apakah karakter Anda sesuai untuk menggapai kesuksesan yang Anda impikan. Berikut adalah 11 kata kata bijak yang bisa dijadikan bahan renungan agar Anda bisa menggapai kesuksesan.

1. “Sukses biasanya datang kepada mereka yang sibuk mencarinya.” – Henry David Thoreau


2. “Logika akan membawa Anda dari A ke B. Imajinasi akan membawa Anda ke mana saja.” – Albert Einstein


3. “Keberanian adalah daya tahan terhadap rasa takut, penguasaan rasa takut – bukan ketiadaan rasa takut.” – Mark Twain


4. “Tentukan satu ide. Buat ide tersebut menjadi hidup Anda – renungkan ide tersebut, bawa ide tersebut dalam mimpi, hidup bersama ide tersebut. Biarkan otak, otot-otot, syaraf-syaraf, setiap bagian dari tubuh Anda dipenuhi ide tersebut, dan tinggalkan ide-ide lainnya.” – Swami Vivekananda

5. “Apakah Anda ingin saya memberikan formula menuju kesuksesan? Cukup sederhana, sangat sederhana: Gandakan tingkat kegagalan Anda. Anda selalu memikirkan kegagalan sebagai lawan dari kesuksesan. Padahal sama sekali bukan. Anda dapat dibuat putus asa oleh kegagalan atau Anda dapat belajar darinya, jadi teruslah melangkah maju dan buatlah kesalahan. Buatlah sebanyak yang Anda mampu. Karena ingat, dari sana Anda akan menemukan kesuksesan.” – Thomas J. Watson


kata-kata bijak Thomas J Warson - www.thehappydept.com
kata-kata bijak Thomas J Warson – www.thehappydept.com


6. “Spesies yang dapat bertahan hidup bukanlah yang paling kuat, bukan juga yang paling pintar, namun mereka yang paling responsif terhadap perubahan.” – Charles Darwin

7. “Para pemikir besar mendiskusikan ide; pemikir rata-rata membicarakan kejadian; pemikir rendahan menggosipkan orang lain.” – Eleanor Roosevelt

8. “Tidak ada yang dapat membuat Anda merasa rendah diri tanpa persetujuan dari Anda.” – Eleanor Roosevelt

9. “Apa yang bagi kita terlihat sebagai cobaan yang berat sering kali adalah berkah yang tersembunyi.” – Oscar Wilde

10. “Dua puluh tahun dari sekarang Anda akan lebih dikecewakan oleh hal-hal yang tidak Anda lakukan daripada hal-hal yang telah Anda lakukan. Jadi, buanglah sauh kapal Anda. Berlayarlah menjauh dari pelabuhan yang aman. Hadang angin dengan layar. Menjelajahlah. Bermimpilah. Temukanlah.” – Mark Twain

11. “Selalu tanamkan dalam benak Anda bahwa ketetapan Anda untuk menggapai sukses lebih penting daripada hal-hal yang lain.” – Abraham Lincoln


kata-kata bijak Abraham Lincoln - www.thwhappydept.com
kata kata bijak Abraham Lincoln – www.thwhappydept.com

Itulah kata kata bijak untuk mengarahkan Anda pada kesuksesan. Silakan tanamkan dalam-dalam dan praktikkan.
Cek artikel menarik lainya di thehappydept.com

Disqus Shortname

Comments System

Disqus Shortname

Comments system