BÀI VIẾT
Ghi chép về xây dựng và vận hành hệ thống
Bài kỹ thuật — kiến trúc, bảo mật, và đôi khi là chuyện chiến trường.
#hard · Tất cả bài viết
Series
Thẻ
- #leetcode 50
- #dfs 17
- #recursion 16
- #bfs 10
- #trees 10
- #two-pointers 9
- #linked-list 8
- #backtracking 7
- #graphs 7
- #array 6
- #hash-map 6
- #heap-priority-queue 6
- #design 5
- #dynamic-programming 5
- #matrix 5
- #stack 5
- #cycle-detection 4
- #greedy 4
- #binary-search 3
- #binary-search-tree 3
- #binary-tree 3
- #divide-and-conquer 3
- #hard 3
- #monotonic-stack 3
- #sorting 3
- #string 3
- #arrays 2
- #data-stream 2
- #data-structures 2
- #dp 2
- #hash-table 2
- #in-place 2
- #math 2
- #priority-queue 2
- #simulation 2
- #sliding-window 2
- #topological-sort 2
- #arrays-hashing 1
- #bit-manipulation 1
- #combinatorics 1
- #constraint-satisfaction 1
- #constraint-validation 1
- #counting 1
- #depth-first-search 1
- #dummy-node 1
- #feasibility 1
- #flood-fill 1
- #gap-technique 1
- #geometry 1
- #hash-set 1
- #heap 1
- #kadane 1
- #level-order 1
- #memoization 1
- #monotonic 1
- #monotonic-deque 1
- #next-greater-element 1
- #optimization 1
- #palindrome 1
- #post-order 1
- #queue 1
- #quickselect 1
- #strings 1
- #two-pass 1
- #two-stacks 1
- #union-find 1
01
Largest Rectangle in Histogram: monotonic stack như một chiếc oracle tìm biên
Mỗi thanh trong histogram đều có thể là chiều cao của một hình chữ nhật lớn nhất — câu hỏi là nó có thể mở rộng rộng bao nhiêu. Monotonic stack trả lời điều đó trong O(n) bằng cách cho bạn biết chính xác khi nào mỗi thanh không còn là chiều cao tối thiểu nữa. Brute force làm rõ bài toán, stack làm cho nó nhanh.14 thg 6, 2026 · 13 phút đọc · #00060
02
N-Queens: đặt xung đột dưới ràng buộc, rồi tỉa cây quyết định
N-Queens là backtracking rút gọn về bộ khung của nó — đặt quân hậu từng hàng, kiểm tra ba kênh xung đột độc lập, hoàn tác khi thất bại. Bài viết này đi qua cả ba approach (brute force, backtracking theo hàng, và backtracking tối ưu với set), trace cây quyết định n=4 bằng tay, và giải thích tại sao phép toán đường chéo lại đơn giản đến bất ngờ.14 thg 6, 2026 · 17 phút đọc · #00087
03
Sliding Window Maximum: tại sao monotonic deque rút gọn O(n*k) xuống còn O(n)
Tìm giá trị lớn nhất trong mỗi cửa sổ kích thước k nghe có vẻ cần quét toàn bộ cửa sổ từ đầu mỗi lần. Không nhất thiết. Monotonic deque theo dõi giá trị max liên tục trong O(1) amortized mỗi bước bằng cách loại bỏ các phần tử không bao giờ có thể là đáp án. Bài này phân tích cả hai approach — brute force và deque — cùng trace tay đầy đủ, phân tích edge case, và reasoning thiết kế để bạn nhận ra cách tối ưu một cách bản năng.14 thg 6, 2026 · 12 phút đọc · #00055
Đôi dòng ghi chép về những gì tôi đang xây
Nhận email khi tôi đăng bài mới — các bài kỹ thuật, không spam. Hủy đăng ký bất cứ lúc nào.