Skip to content

Latest commit

 

History

History
222 lines (167 loc) · 11.5 KB

Home.md

File metadata and controls

222 lines (167 loc) · 11.5 KB

VNOI Wiki

Giới thiệu

Thư viện VNOI được xây dựng với mục đích chia sẻ kiến thức Tin học đến với tất cả mọi người. Bạn có thể đọc bài giới thiệu của bọn mình [[ở đây|about]].

Bạn đọc bài viết nhưng không hiểu? Hãy hỏi ở đây.

Ở trang chủ này, các bài viết về thuật toán được đánh dấu về độ khó từ (1*) đến (5*) với ý nghĩa:

  • (1*): Cơ bản,
  • (2*): Kiến thức cần biết để thi HSG QG, ACM ICPC,
  • (3*): Kiến thức nâng cao, dành cho các bạn có mục tiêu đạt giải cao trong HSG QG,
  • (4*): Kiến thức rất khó,
  • (5*): Kiến thức rất chuyên sâu về 1 vấn đề nào đó, chỉ áp dụng được với rất ít bài khó.

Hiện tại bọn mình chưa có bài viết về chủ đề Lý thuyết đồ thị, do phần này những quyển sách như sách thầy Lê Minh Hoàng, Tài liệu giáo khoa chuyên tin (download ở [[Một số tài liệu hay về Thuật Toán|algo/basic/Tai-Lieu-Thuat-Toan]]) đã viết rất chi tiết.

Thuật toán

Nhập môn

  • [[Tầm quan trọng của Thuật Toán|translate/topcoder/The-Importance-of-Algorithm]]
  • [[Một số tài liệu hay về Thuật Toán|algo/basic/Tai-Lieu-Thuat-Toan]]
  • [[Nghệ thuật giải bài|translate/topcoder/How-to-Find-a-Solution]]
  • [[Những cách tiếp cận bài toán|translate/topcoder/Planning-an-Approach-to-a-Topcoder-Problem-Part-1]]
  • [[Độ phức tạp thời gian (1*)|algo/basic/computational-complexity.md]]
  • [[Sắp xếp (1*)|algo/basic/sorting]]
  • [[Tìm kiếm nhị phân|algo/basic/binary-search]]
  • [[Hai con trỏ (1*)|algo/basic/two-pointers]]
  • [[Phép toán bit|algo/basic/bitwise-operators.md]]
  • [[Đệ quy và quay lui|algo/basic/backtracking.md]]
  • [[Chia đôi tập|algo/basic/meet-in-the-middle.md]]

Cấu trúc dữ liệu

  • [[Tổng quan về cấu trúc dữ liệu (2*)|algo/data-structures/data-structures-overview]]
  • [[Mảng và danh sách liên kết (1*)|algo/data-structures/array-vs-linked-lists]]
  • [[Ngăn xếp (stack) (1*)|algo/data-structures/Stack]]
  • [[Mảng cộng dồn và mảng hiệu|algo/data-structures/prefix-sum-and-difference-array.md]]
  • [[Deque và tìm min max trên đoạn tịnh tiến (2*)|algo/data-structures/deque-min-max]]
  • [[Heap (2*)|translate/wcipeg/Binary-Heap]]
  • [[Bảng băm (Hash table) (2*)|algo/data-structures/hash-table]]
  • [[Disjoint Set Union (2*)|algo/data-structures/disjoint-set-union]]
  • [[Cây Phân Đoạn (cơ bản)|algo/data-structures/segment-tree-basic.md]]
  • [[Segment Tree (Interval Tree) (2*)|algo/data-structures/segment-tree-extend]]
  • [[Cài đặt Segment Tree chạy nhanh hơn (3*)|translate/codeforces/Efficient-and-easy-segment-trees.md]]
  • [[Chia căn - Part 1|algo/data-structures/sqrt-decomposition]]
  • [[Mo Algorithm (3*)|algo/data-structures/mo-algorithm]]
  • [[Segment Tree (Interval Tree) trên tập đoạn thẳng (4*)|algo/data-structures/interval-tree-tap-doan-thang]]
  • [[Fenwick Tree (Binary Indexed Tree) (2*)|algo/data-structures/fenwick]]
  • [[Heavy Light Decomposition|algo/data-structures/heavy-light-decomposition]]
  • [[Persistent Data Structures (3*)|algo/data-structures/persistent-data-structures]]
  • [[Lowest Common Ancestor (LCA) - Binary Lifting|algo/data-structures/lca-binlift.md]]
  • [[Bài toán RMQ & bài toán LCA (2*)|translate/topcoder/Range-Minimum-Query-and-Lowest-Common-Ancestor]]
  • [[Các phương pháp giải bài toán LCA (3*)|algo/data-structures/lca]]
  • [[Trie (2*)|algo/data-structures/trie]]
  • [[Suffix Array (4*)|algo/data-structures/suffix-array]]
  • [[Palindrome Tree (4*)|translate/codeforces/palindrome-tree]]
  • [[Skip List (3*)|algo/data-structures/Skip-Lists]]
  • Range Tree - thầy Lê Minh Hoàng (3*)

Xử lý xâu

  • [[Tổng quan (2*)|algo/string/basic]]
  • [[KMP (2*)|algo/string/kmp]]
  • [[Trie (2*)|algo/data-structures/trie]]
  • [[Hash (2*)|algo/string/hash]]
  • [[Suffix Array (4*)|algo/data-structures/suffix-array]]
  • [[Palindrome Tree (4*)|translate/codeforces/palindrome-tree]]
  • [[Z-function|algo/string/z-algo]]
  • [[Z Algorithm (3*)|translate/codeforces/z-algo]]
  • Suffix Tree - thầy Lê Minh Hoàng(4*)

Quy hoạch động

  • [[Nhập môn Quy hoạch động (2*)|translate/topcoder/dynamic-programming]]
  • [[Quy hoạch động cơ bản (Phần 1)|algo/dp/basic-dynamic-programming-1.md]]
  • [[Quy hoạch động cơ bản (Phần 2)|algo/dp/basic-dynamic-programming-2.md]]
  • [[Một vài bài tập về Palindrome (2*)|algo/dp/palindrome-problems]]
  • [[Một số bài toán QHD điển hình (2*)|algo/dp/basic-problems]]
  • [[Phân tích về QHD - Thầy Lê Minh Hoàng|algo/dp/thac-mac-ve-qhd]]
  • [[Một số kĩ thuật tối ưu hoá QHĐ (3*)|algo/dp/Mot-so-ky-thuat-toi-uu-hoa-thuat-toan-Quy-Hoach-Dong]]
  • [[Kĩ thuật bao lồi (3*)|translate/wcipeg/Convex-Hull-Trick]]

Đồ thị

  • [[Các chủ đề cơ bản về đồ thị (2*)|algo/graph-theory/everything]]
  • [[Thuật toán duyệt đồ thị theo chiều rộng|algo/graph-theory/breadth-first-search.md]] (BFS)
  • [[Bài toán khớp cầu, thành phần liên thông mạnh|algo/graph-theory/Depth-First-Search-Tree.md]] (Cây DFS và ứng dụng)
  • [[Cây khung nhỏ nhất trên đồ thị vô hướng|algo/graph-theory/minimum-spanning-tree.md]]
  • [[Các thuật toán về tìm đường đi ngắn nhất|algo/graph-theory/shortest-path]]
  • [[Sắp xếp Tô-pô|algo/graph-theory/topological-sort.md]]
  • [[Đường đi - Chu trình Euler|algo/graph-theory/euler-cycle.md]]
  • [[Đường đi Euler trên cây|algo/graph-theory/euler-tour-on-tree.md]]
  • [[Thuật toán phân tách trọng tâm|algo/graph-theory/centroid-decomposition.md]]
  • Bài toán 2-SAT (3*)
  • [[Luồng cực đại trên mạng (3*)|translate/topcoder/max-flow-1-luong-cuc-dai-tren-mang-1.md]]

Tham lam

  • [[Tham lam (2*)|translate/topcoder/Greedy-is-Good]]
  • [[Sum-constrained convex optimization|algo/trick/convex_greedy]]

Số học

  • [[Kiểm tra số nguyên tố|algo/algebra/primality_check.md]]
  • [[Sàng nguyên tố|algo/algebra/prime_sieve.md]]
  • [[Lũy thừa nhị phân|algo/algebra/binary_exponentation.md]]

Series số học của HackerEarth

  • [[Số học 1 - Modulo và gcd (1*)|translate/he/So-hoc-Phan-1-Modulo-gcd]].
  • [[Số học 2 - Số nguyên tố, Sàng Eratosthenes (1*)|translate/he/Number-Theory-2]].
  • [[Số học 3 - Tính (a^b) % c (1*)|translate/he/Number-Theory-3]].
  • [[Số học 4 - Phi hàm Euler (2*)|translate/he/Number-Theory-4]].
  • [[Số học 4.5 - Nghịch đảo modulo (2*)|algo/math/modular-inverse]].
  • [[Số học 5 - Các kiến thức cơ bản về Tổ hợp (Combinatorics) (2*)|translate/he/Number-Theory-5]].
  • [[Số học 6 - Xác suất (Probabilities) (2*)|translate/he/Number-Theory-6]].
  • [[Số học 7 - Bao hàm - Loại trừ (Inclusion-Exclusion) (2*)|translate/he/Number-Theory-7]].

Hình học

  • [[Hình học tính toán phần 1|algo/geometry/basic-geometry-1]]
  • [[Hình học tính toán phần 2|algo/geometry/basic-geometry-2]]
  • [[Thuật toán đường quét (2*)|algo/geometry/Sweep-Line.md]]
  • [[Bao lồi (3*)|translate/wcipeg/Convex-Hull]]

Toán học

  • [[Toán học trong Tin học (2*)|translate/topcoder/Mathematics-for-Topcoders]]
  • [[Xác suất (2*)|translate/topcoder/Hieu-ve-xac-suat]]
  • [[Định lý Wilson (3*)|translate/he/Wilsons-theorem]]
  • [[Hàm nhân tính (Multiplicative Function) (4*)|algo/math/multiplicative-function]]
  • [[Hàm Mobius (4*)|translate/quora/mobius-function.md]]
  • [[Nhân nhanh đa thức - FFT (4*)|algo/trick/FFT]]
  • [[Lý thuyết trò chơi|algo/math/game-theory.md]]

Tối ưu hoá

  • [[Tìm kiếm tam phân - Ternary Search (3*)|translate/emaxx/Tim-kiem-tam-phan-Ternary-Search]]
  • [[Local Search (3*)|algo/search/Local-Search]]

Kỹ năng khác

  • [[Rời rạc hoá (nén số) (1*)|algo/trick/Roi-rac-hoa-va-ung-dung]]
  • [[Nhân ma trận (3*)|algo/trick/matrix-multiplication]]
  • [[Khử nhân ma trận (3*)|algo/trick/counting-without-matrix-multiplication]]
  • [[Mo's algorithm (3*)|algo/data-structures/mo-algorithm]]
  • [[Fun with bits|translate/topcoder/fun-with-bits]]
  • [[Giải thuật cắt tỉa Alpha-Beta|algo/games/Giai-Thuat-Cat-Tia-Alpha-beta]]

Chia sẻ

Về cách học Tin học

  • [[Tôi đã học Tin như thế nào - phần 1|algo/basic/hoc-tin-the-nao-1]]
  • [[Tôi đã học Tin như thế nào - phần 2|algo/basic/hoc-tin-the-nao-2]]

Kĩ năng thi cử

  • [[Viết trình chấm|algo/skill/viet-trinh-cham]]
  • [[Tổng hợp lời khuyên cho các kỳ thi|algo/skill/Ki-nang-thi-cu]]
  • [[Kinh nghiệm thi VOI|algo/skill/Kinh-nghiem-thi-VOI]]

Kinh nghiệm phỏng vấn

  • [[Những kinh nghiệm chung khi phỏng vấn|interview/general-experience]]
  • [[Kinh nghiệm phỏng vấn - Góc nhìn từ người phỏng vấn|interview/experience-from-interviewer]]
  • [[Những lần phỏng vấn và những kinh nghiệm rút ra|interview/Nhung-lan-phong-van-trong-thuc-te-va-bai-hoc-rut-ra]]

VNOI Interview

  • [[Phỏng vấn Lê Yên Thanh|vnoi-interview/yen-thanh]]
  • [[Phỏng vấn Nguyễn Xuân Khánh|vnoi-interview/xuan-khanh]]
  • [[Phỏng vấn Team IOI Việt Nam 2017|vnoi-interview/Phong-van-team-IOI-VN-2017]]
  • [[Phỏng vấn Team IOI Việt Nam 2018|vnoi-interview/Phong-van-team-IOI-Viet-Nam-2018]]

Khác

  • [[Hoài niệm về Pascal - thầy Lê Minh Hoàng|others/Pascal-Vi-sao]]

Các kỳ thi

Các chủ đề trong Khoa học máy tính

Ngôn ngữ lập trình

  • [[Xử lý xâu trong C++|languages/cpp/string]]
  • [[Sử dụng regex|translate/topcoder/Using-Regular-Expression]]
  • C++ STL
  • [[Con trỏ trong C++|languages/cpp/pointers]]

Machine Learning

  • [[Machine Learning 101: Làm quen|cs/ml/machine-learning-101]]
  • [[Classification - Phần 1|translate/ml/Machine-Learning-Classification-phan-1]]
  • [[Classification - Phần 2|translate/ml/Machine-Learning-Classification-phan-2]]
  • [[Classification - Phần 3|translate/ml/Machine-Learning-Classification-phan-3]]
  • [[Classification - Phần 3|translate/ml/Machine-Learning-Classification-phan-3]]
  • [[PyTorch là gì?|translate/PyTorch-la-gi]]

Các chủ đề khác: