Danh sách chủ đề

Giới thiệu về lớp học + cách luyện thuật toán trên Leetcode
Đào sâu vào phân tích thuật toán
Chuỗi - String
Chữa bài tập phân tích thuật toán
Mảng - Array
Hai con trỏ - Two Pointers
Chữa bài tập Chuỗi + Mảng
Ngăn xếp và Hàng đợi - Stack & Queue
Đệ quy
Chữa bài hai con trỏ + ngăn xếp
Thuật toán sắp xếp - Giải thuật tham lam
Đống - Heap
Đồ thị - Graph
Chữa bài đệ quy + sắp xếp + giải thuật tham lam
Thuật toán BFS
Thuật toán DFS
Chữa bài Heap + Đồ thị
Thuật toán Dijkstra
Cấu trúc dữ liệu Union Find
Chữa bài tập BFS + DFS
Toán học
Cây - Tree
Tìm kiếm nhị phân - Binary Search
Chữa bài Dijkstra + Union Find
Cây tìm kiếm nhị phân - Binary Search Tree
Danh sách liên kết - Linked List
Chữa bài toán + gợi ý các bài cây
Quy hoạch động cơ bản - Knapsack
Ứng dụng quy hoạch động trong trí tuệ nhân tạo
Chữa bài cây nhị phân + Tìm kiếm nhị phân

Mảng - Array

Mảng trong Python giúp chúng ta lưu trữ nhiều kiểu dữ liệu liền nhau theo thứ tự.

Chi tiết:

  • Giới thiệu về mảng
  • Kỹ thuật sử dụng tổng dồn / tích dồn
  • Ma trận
  • Xoay ma trận với độ phức tạp không gian thêm O(1)

Một số dạng Leetcode hay gặp:

  • Bài tập tìm 2 hoặc 3 phần tử có tổng bằng K cho trước
  • Làm việc với ma trận 2 chiều
  • Các bài toán tổng dồn / tích dồn
  • Bài tập phần tử lặp lại, phần tử biến mất và phép tối ưu sao cho độ phức tạp không gian thấp.

1. Một số tính năng cập nhật - 21/03/2022

1.1. [LC] Một số tính năng cập nhất mới - 21/03/2022

2. Giới thiệu về mảng

2.1. 4.1 Giới thiệu mảng

2.2. [LC] 4.1.2. Ôn tập về mảng với Python

3. Kỹ thuật sử dụng tổng dồn / tích dồn

3.1. 4.2. Tính tổng dồn của một mảng

3.2. [LC] 4.2.2. Gợi ý bài tập Leetcode 238

4. Ma trận

4.1. 4.4.1. Ma trận

4.2. 4.4.4. Xoay ma trận 90 độ

4.3. 4.4.5 Leetcode 48 - Xoay ma trận

4.4. 4.4.6. Leetcode 48 - Hướng giải quyết

5. Slide bài giảng

5.1. 3.1.Accummulation.pdf

5.2. 3.4.Matrix.pdf

5.3. 3.5. Rotate Matrix.pdf

5.4. 3.6. Negative Index.pdf

Bài học