Saat kami mengembangkan perangkat lunak, kami harus menyimpan data di memori. Namun, banyak jenis struktur data, seperti array, peta, set, daftar, pohon, grafik, dll. , dan memilih yang tepat untuk tugas itu bisa jadi rumit. Serangkaian posting ini akan membantu Anda mengetahui kompromi sehingga Anda dapat menggunakan alat yang tepat untuk pekerjaan itu Bagian ini akan fokus pada struktur data linier. Array, Daftar, Set, Tumpukan, dan Antrian Anda dapat menemukan semua implementasi ini dan lebih banyak lagi di repo Github. https. //github. com/amejiarosario/dsa. js Posting ini adalah bagian dari seri tutorial Mempelajari Struktur dan Algoritma Data (DSA) untuk Pemula
Cheatsheet Struktur Data Big-OTabel berikut adalah ringkasan dari semua yang akan kita bahas
Klik pada nama untuk menuju ke bagian atau klik pada runtime untuk menuju ke implementasi function remove(array, element) {4 = Waktu kerja diamortisasiNameInsertAccessSearchDeleteCommentsInsertion sampai akhir adalah function remove(array, element) {5. Pengulangan dapat memengaruhi waktu penyisipan. Peta (menggunakan Binary Search Tree)O(log(n))-O(log(n))O(log(n))Diimplementasikan menggunakan Binary Search Tree-Set menggunakan implementasi HashMap. Tetapkan (menggunakan daftar)-Diimplementasikan menggunakan Pohon Pencarian BinerSet (menggunakan Pohon Pencarian Biner)O(log(n))-O(log(n))O(log(n))Diimplementasikan menggunakan Pohon Pencarian Biner-Menambahkan/Menghapus ke awal daftar adalah function remove(array, element) {5. . -Menambahkan/Menghapus dari awal/akhir adalah function remove(array, element) {5. Tapi, menghapus/menambahkan dari tengah adalah function remove(array, element) {8. --Sisipkan/hapus adalah yang terakhir masuk, keluar pertama (LIFO)--Hapus ( function remove(array, element) {9) adalah O(n)--Waktu terburuk adalah O(n). Namun diamortisasi adalah O(1)--Menggunakan Doubly Linked List dengan mengacu pada elemen terakhir Catatan. Pohon dan pohon pencarian biner secara umum akan dibahas pada postingan berikutnya. Juga, grafik struktur data |