ALGORITHM & DATA STRUCTURE BY : SUZILA YUSOF
Pengenalan kepada Struktur Data dan Algoritma MATEMATIK Kajian Sains Komputer SAINS KEJURUTERAAN
Samb… pakar membuat rumusan matematik tahu kaedah saintifik dan sistematik Ahli Sains Komputer berfikir secara kreatif untuk merekabentuk algoritma dan memilih struktur data yang sesuai
Samb… = keberkesanan peny. masalah & algoritma yg sesuai penting : ruang storan& masa larian Pemilihan struktur data Penyelesaian Masalah Berkomputer STRUKTUR DATA
Pengenalan Kepada Algoritma Data struktur siri tatacara yg tersusun, langkah demi langkah utk menyelesaikan masalah kaedah utk menyusun data yg akan diproses oleh komputer Dlm bidang SK, algoritma adalah suatu turutan arahan kepada komputer yang memberi penyelesaian logik bagi suatu masalah. Ia melibatkan operasi ke atas koleksi data-data.
Samb… Jujukan : Setiap langkah dilaksanakan secara berturutan selangkah demi selangkah Algoritma Berstruktur Pilihan : Satu drp beberapa pilihan perlaksanaan akan dipilih dan dilaksanakan mudah utk dibaca, difahami, dikaji dan diperbetulkan (ralat) →berkesan Ulangan / gelung : Satu @ lebih langkah dilaksanakan berulangkali
Samb… Algoritma ditulis dalam pelbagai bentuk : bahasa tabii manusia, kod pseudo, carta alir @ bahasa pengaturcaraan seperti Pascal, C, C++ dan sebagainya
Samb… Penyelesaian masalah yg terhingga (ada penamat) Setiap arahan adalah jelas Ciri Penting Algoritma Mempunyai input, utk memulakan perlaksanaan Mempunyai output, hasil perlaksanaan Boleh dilarikan (run) apabila diimplimen atau berkesan
Kajian Kes Algoritma : →Membanding dua no. utk mendapatkan nilai terbesar. Penyelesaian menggunakan : Bahasa Tabii Manusia Cartalir Masalah utk menentukan dan mencetak nombor terbesar di antara dua nombor yg dibaca drp papan kekunci.
Bahasa Tabii 1. Baca nombor1 dan nombor2 2. Jika nombor1 lebih besar drp nombor2 2.1 Cetak mesej nombor1 lebih besar drp nombor2 3. Jika nombor2 lebih besar drp nombor1 3.1 Cetak mesej nombor2 lebih besar drp nombor1 4. Jika syarat ‘2’ dan ‘3’ tidak benar 4.1 Cetak mesej nombor1 dan nombor2 adalah sama nilainya 5. Tamat
Cartalir MULA BACA nombor1, nombor2 JIKA Nombor1> nombor2 YA CETAK “nombor1 > Nombor2” TIDAK JIKA Nombor2> nombor1 CETAK “nombor2 > Nombor1” YA TIDAK CETAK “nombor1 = Nombor2” TAMAT
Pengenalan Kepada Struktur Data Algoritma Data struktur siri tatacara yg tersusun, langkah demi langkah utk menyelesaikan masalah kaedah utk menyusun data yg akan diproses oleh komputer Gabungan nilai data yg disusun berasaskan struktur yang akan membentuk susunan data Beberapa set operasi boleh dilakukan ke atas susunan data tsb.
Samb… Struktur storan STRUKTUR DATA Struktur pautan Struktur hubungan keadaan
Struktur Storan mengawal reka letak data pd ingatan secara terus Ia dibahagikan kepada dua jenis: • Tatasusunan (array) • Rekod atau struktur (structure)
Struktur Pautan Utk menghubungkan suatu nod (satu struktur susunan data, biasanya dlm bentuk rekod) dgn nod yg lain. Pautan nod blh dilakukan secara linear @ tidak linear. Contoh • Senarai berpaut (linked list) • Pepohon (tree) • Graf (graph)
Struktur Keadaan Utk menggambarkan tugas yg berlaku di dlm sesuatu proses yg berlaku di dunia sebenar. Contoh • Tindanan (stack) • Baris gilir (queue)
Struktur Hubungan Melaksanakan hubungan antara kekunci capaian dan data yg lain utk memudahkan operasi carian. Contoh • Jadual (table) • Pepohon carian (search tree)
Jenis Data Data Asas Jenis Data Data Niskala • Data mudah (Simple data types) • Data penuding (Pointer) • Data berstruktur Data Asas Jenis Data Data Niskala
diwakilkan oleh pembolehubah Pemilihan Jenis Data Pemilihan Jenis Data bergantung kpd nilai yg hendak diwakilkan oleh pembolehubah Nilai umur → jenis data integer Nama pelajar → pembolehubah tatasusunan berjenis aksara
Jenis Data Mudah Jenis data yang hanya boleh menyimpan satu nilai. Terbahagikan kepada dua jenis, iaitu: • Pre-define data types Jenis data yang ditakrifkan oleh bahasa pengaturcaraan seperti int: data berjenis integer, char : data berjenis aksara dan sebagainya. • User-define data types Data takrifan pengguna ialah jenis data yang ditakrifkan oleh pengaturcara seperti data jenis bernombor (enumerated data types).
Jenis Data Penuding Jenis data takrifan pengguna yang bergantung kepada jenis data yang dituding oleh pembolehubah penuding (yang ditentukan oleh pengguna).
Jenis Data Berstruktur Jenis data yang boleh ditakrifkan oleh pengguna. Contohnya; tatasusunan, struktur.
Jenis Data Niskala (Abstract Data Types) Memodelkan suatu operasi objek dari dunia sebenar. Daripada model ini, struktur data dibina oleh pengaturcara dengan menggunakan beberapa jenis data yang sedia ada. Contoh; senarai berpaut, tindanan, giliran dan pepohon.