Giới Thiệu Khóa Học
Link tìm hiểu khóa hoc:https://unica.vn/cau-truc-du-lieu-va-giai-thuat-thuc-chien-voi-java-va-leetcode
Bạn có biết:
Chi Tiết Khóa Học
Phần 1: Giới thiệu
Bài 1 : Hướng dẫn xem video trên Unica
Bài 2 : Giới thiệu khoá học
Bài 3 : Nội dung của khoá học
Bài 4 : Cách học của khoá học [QUAN TRỌNG]
Bài 5 : Tham gia group giải bài tập [QUAN TRỌNG]
Bài 6 : Hướng dẫn chạy và debug với Visual Studio Code
Bài 7 : Hướng dẫn chạy và debug với IntelliJ
Bài 8 : Cách làm bài và nộp bài trên LeetCode
Bài 9 : Tham gia group Discord
00:00:00
Phần 2: Array and String | Mảng và Chuỗi
Bài 10 : Duyệt mảng
Bài 11 : Thêm/Chèn phần tử vào mảng
Bài 12 : Xoá phần tử trong mảng
Bài 13 : Kỹ thuật 2 con trỏ: Xoá phần tử trong mảng
00:09:17
Bài 14 : Kỹ thuật 2 con trỏ: Thêm phần tử vào mảng
00:17:53
Bài 15 : List và Array List trong Java
00:10:08
Bài 16 : Làm việc với mảng 2 chiều
00:21:01
Bài 17 : Giới thiệu về String, Character và char
00:22:32
Bài 18 : Thực hành với String và Character
00:20:22
Bài 19 : Làm quen với StringBuilder
00:06:36
Phần 3: Sorting (1) | Các thuật toán sắp xếp (Phần 1)
Bài 20 : Giới thiệu
00:00:21
Bài 21 : Bubble Sort | Sắp xếp nỏi bọt
00:09:25
Bài 22 : Insertion Sort | Sắp xếp chèn
00:07:07
Bài 23 : Selection Sort | Sắp xếp chọn
00:04:50
Bài 24 : Bài toán tìm số lớn thứ 3
00:14:19
Phần 4: Recursion | Đệ quy
Bài 25 : Giới thiệu về đệ quy | Định nghĩa đệ quy
00:02:11
Bài 26 : Đặc điểm của đệ quy
00:01:17
Bài 27 : Thực hành 1: Tính giai thừa (phần 1)
00:03:39
Bài 28 : Thực hành 1: Tính giai thừa (phần 2)
00:08:05
Bài 29 : Thực hành 2: Tính số Fibonacy (phần 1)
00:05:40
Bài 30 : Thực hành 2: Tính số Fibonacy (phần 2)
00:05:52
Bài 31 : Một số bài toán khác
00:02:19
Bài 32 : Phân loại đệ quy (phần 1)
00:03:41
Bài 33 : Phân loại đệ quy (phần 2)
00:01:22
Bài 34 : Ưu điểm và nhược điểm của đệ quy
00:01:55
Bài 35 : Tối ưu hoá đệ quy
00:05:47
Bài 36 : Khử đệ quy
00:03:39
Bài 37 : Nên sử dụng đệ quy khi nào?
00:01:19
Bài 38 : Hai cách cài đặt Đệ quy
00:14:48
Phần 5: Binary Search | Tìm kiếm nhị phân
Bài 39 : Giới thiệu về Binary Search
00:07:42
Bài 40 : Cài đặt Binary Search bằng vòng lặp
00:10:04
Bài 41 : Cài đặt Binary Search bằng đệ quy
00:07:24
Bài 42 : Đánh giá thuật toán
00:03:37
Phần 6: Sorting (2) | Các thuật toán sắp xếp (phần 2)
Bài 43 : Merge Sort: Ý tưởng
00:03:59
Bài 44 : Merge Sort: Cài đặt
00:13:40
Bài 45 : Merge Sort: Testing
00:08:39
Bài 46 : Quick Sort: Ý tưởng
00:13:27
Bài 47 : Quick Sort: Cài đặt
00:18:35
Bài 48 : Sử dụng thư viện sắp xếp trong Java
00:18:48
Phần 7: Độ phức tạp của thuật toán
Bài 49 : Giới thiệu về Space Complexity
00:07:31
Bài 50 : Giới thiệu về Time Complexity
00:07:05
Bài 51 : Big O notation
00:07:47
Bài 52 : Các độ phức tạp cơ bản
00:06:43
Bài 53 : Thực hành 1: Giải thuật tìm kiếm tuần tự
00:01:58
Bài 54 : Thực hành 2: Giải thuật Sắp xếp nổi bọt
00:05:15
Bài 55 : Thực hành 3: Giải thuật Fibonaci
00:04:42
Bài 56 : Thực hành 4: Giải thuật tìm kiếm nhị phân
00:06:04
Bài 57 : Thực hành 5: Thuật toán Merge Sort
00:10:12
Bài 58 : Thực hành 6: Thuật toán Quick Sort
00:06:04
Phần 8: Linked List | Danh sách liên kết
Bài 59 : Giới thiệu Linked List
00:10:48
Bài 60 : Cài đặt Linked List
00:06:56
Bài 61 : Thêm phần tử vào đầu
00:04:30
Bài 62 : Thêm phần tử vào cuối
00:05:04
Bài 63 : Thêm phần tử vào giữa
00:09:53
Bài 64 : Xoá phần tử ở đầu
00:02:17
Bài 65 : Xoá phần tử ở cuối
00:06:39
Bài 66 : Xoá phần tử ở giữa
00:13:31
Bài 67 : Bài toán đảo ngược một Linked List (Sử dụng vòng lặp)
00:12:09
Bài 68 : Bài toán đảo ngược một Linked List (Sử dụng đệ quy)
00:23:16
Phần 9: Stack and Queue | Ngăn xếp và Hàng đợi
Bài 69 : Giới thiệu Stack & Queue
00:01:45
Bài 70 : Các thao tác cơ bản với Stack & Queue
00:03:39
Bài 71 : Tạo interface cho Stack và Queue
00:03:24
Bài 72 : Cài đặt Stack với Mảng
00:10:28
Bài 73 : Cài đặt Queue với Mảng
00:11:59
Bài 74 : Cài đặt Stack với Linked List
00:12:21
Bài 75 : Cài đặt Queue với Linked List
00:11:01
Bài 76 : Stack trong Java
00:15:45
Bài 77 : Queue trong Java
00:14:13
Phần 10: Hash Table | Set and Map
Bài 78 : Giới thiệu về Hash Table
00:05:20
Bài 79 : Design a Hash Function
00:08:21
Bài 80 : Collision và cách xử lý
00:02:30
Bài 81 : Ứng dụng của Hash Table
00:04:40
Bài 82 : Design a Hash Set
00:06:14
Bài 83 : Implement a HashSet (phần 1)
00:08:37
Bài 84 : Implement a HashSet (phần 2)
00:11:25
Bài 85 : Design a Hash Map
00:06:57
Bài 86 : Implement a HashMap (phần 1)
00:12:02
Bài 87 : Implement a HashMap (phần 2)
00:06:55
Bài 88 : HashSet in Java
00:12:57
Bài 89 : HashMap in Java
00:17:58
Phần 11: Tree | Cây
Bài 90 : Giới thiệu về Tree, Binary Tree, Binary Search Tree
00:11:19
Bài 91 : Xây dựng cây BST
00:08:13
Bài 92 : Thêm một node vào cây BST (Vòng lặp)
00:18:46
Bài 93 : Thêm một node vào cây BST (Đệ quy)
00:06:39
Bài 94 : Xoá một node khỏi cây BST
00:21:19
Bài 95 : Tìm kiếm trên cây BST
00:03:32
Bài 96 : Duyệt cây theo 3 thứ tự (Lý thuyết)
00:06:28
Bài 97 : Duyệt cây theo 3 thứ tự (Implement)
00:10:20
Bài 98 : Bài toán tính chiều cao cây
00:07:15
Bài 99 : Bài toán tính tổng trên cây
00:13:29
Phần 12: Graph | Đồ thị
Bài 100 : Giới thiệu về Đồ thị
00:17:12
Bài 101 : Giới thiệu về DFS - Tìm kiếm theo chiều sâu
00:04:29
Bài 102 : Cài đặt DFS với Stack
00:06:42
Bài 103 : Cài đặt DFS với đệ quy
00:07:00
Bài 104 : Cài đặt BFS với Queue
00:05:53
Bài 105 : Ứng dụng DFS: Tính số miền liên thông
00:14:53
Bài 106 : Thuật toán Dijkstra (Tìm đường đi ngắn nhất): Lý thuyết
00:15:53
Bài 107 : Thuật toán Dijkstra (Tìm đường đi ngắn nhất): Cài đặt
00:21:20
Phần 13: Heap | Đống
Bài 108 : Giới thiệu về Heap
00:05:31
Bài 109 : Biểu diễn Heap
00:11:33
Bài 110 : Các thao tác với Heap
00:02:46
Bài 111 : Khởi tạo Heap
00:03:59
Bài 112 : Thêm phần tử vào Heap
00:07:01
Bài 113 : Xóa phần tử ở Root
00:13:58
Bài 114 : Xóa phần tử ở vị trí bất kỳ
00:06:59
Bài 115 : Test trên HackerRank
00:06:59
Bài 116 : Heap trong Java
00:06:56
Bài 117 : Cách sử dụng và bài tập
00:02:33
Phần 14: Các CTDL và giải thuật NÂNG CAO
Bài 118 : Bit Manipulation - Các thao tác xử lý với Bit
00:03:40
Bài 119 : Backtracking - Thuật toán quay lui
00:37:24
Bài 120 : Dynamic Programming - Quy Hoạch Động
00:13:48
Bài 121 : Trie / Prefix Tree - Cây tiền tố
00:21:43
Bài 122 : Tổng kết