Data-struktur-dan-algoritma-dalam-berenang
Ini adalah ringkasan pembelajaran saya dari kursus Udemy: "Struktur Data & Algo di Swift"
Kompleksitas Waktu:
- Waktu konstan
- Waktu linier
- Waktu kuadratik
- Waktu Logaritmik - Pencarian Biner
- Waktu quasilinear
Node:
- Akar
- Anak -> Anak Kiri & Anak Kanan
- Daun
Daftar Tertaut
Elemen terhubung satu sama lain dengan referensi yang disebut node
Node pertama dalam daftar tertaut disebut head
Node terakhir disebut node ekor
Operasi: - Push - Append - Insert - Pop - Removelast - Hapus
Tumpukan (Lifo)
Antrian (FIFO)
- Mengintip
- Enqueue
- Dequeue
Rekursi
- Kasus dasar - yang menghentikan rekursi.
- Kasus rekursif
Pohon:
- Kedalaman traversal pertama
- Traversal pesanan level
- Mencari
- Pohon biner (dapat memiliki maksimal: 2 anak saja - kiri & kanan)
- Dalam urutan Traversal -> LeftChild -> Node -> RightChild
- Post Order Traversal -> LeftChild -> RightChild -> Node
- Pra Order Traversal -> Node -> LeftChild -> RightChild
- Pohon pencarian biner
Pencarian linier
Pencarian biner
- Array yang diurutkan
- Indeks Tengah - Kiri atau Kanan
- Waktu Terbaik: O (1)
- Waktu terburuk: o (log n)
Sortir Gelembung
- Tidak disortir
- Waktu terbaik: o (n) (jika sudah diurutkan)
- Waktu terburuk: o (n^2)
Jenis seleksi
- Tukar elemen minimum dalam array dengan indeks saat ini
- Pindah ke indeks berikutnya dan ulangi Langkah 1
- Waktu Terbaik: o (n^2)
- Waktu terburuk: o (n^2)
Sort Penyisipan
- Tidak disortir
- Waktu Terbaik: O (N)
- Waktu terburuk: o (n^2)
Grafik:
Terdiri dari
- Simpul / simpul
- Tepi / tepi
Jenis Grafik:
- Grafik tertimbang
- Grafik terarah
- Grafik tidak terarah (dua arah)
Daftar kedekatan
- Cara paling umum/banyak digunakan untuk membuat dan mewakili grafik