menu_book LESSON MODE

Lưu Đồ Ch.1 — Thuật Toán Là Gì?

calendar_today Đăng 31 May 2026
Lưu Đồ Ch.1 — Thuật Toán Là Gì?
school

NOW LEARNING

Lưu Đồ Ch.1 — Thuật Toán Là Gì?

📐 Lưu Đồ & Thuật Toán · Tin học THPT
🤔
Chapter 1 · Lưu Đồ & Thuật Toán

Thuật Toán
Là Gì?

Khám phá khái niệm nền tảng nhất của khoa học máy tính — thuật toán và vai trò của nó trong cuộc sống!

📖

Thuật toán là gì?

Thuật toán là một dãy hữu hạn các bước rõ ràng, xác định để giải quyết một bài toán hoặc thực hiện một nhiệm vụ cụ thể, trong một khoảng thời gian hữu hạn.

🍳
Công thức nấu ăn = Thuật toán! Khi nấu trứng chiên: (1) Đập trứng vào bát → (2) Thêm muối → (3) Bật bếp → (4) Cho dầu vào chảo → (5) Đổ trứng vào → (6) Chờ chín → (7) Lấy ra. Đây chính là một thuật toán — từng bước rõ ràng, thứ tự xác định!
📌 Định nghĩa chính thức: Thuật toán là một tập hữu hạn các lệnh hay chỉ thị được thực hiện theo thứ tự để đạt được mục đích, giải quyết một vấn đề cụ thể.

5 đặc trưng bắt buộc của mọi thuật toán

Không phải mọi dãy bước đều là thuật toán! Một thuật toán hợp lệ phải đảm bảo đủ 5 đặc trưng sau:

1
Tính xác định (Definiteness)
Mỗi bước phải rõ ràng, không mơ hồ — chỉ có một cách hiểu duy nhất.
❌ "Thêm ít muối" → ✅ "Thêm 2g muối"
2
Tính hữu hạn (Finiteness)
Thuật toán phải kết thúc sau một số bước hữu hạn, không chạy mãi mãi.
Không được vòng lặp vô tận
3
Tính đúng đắn (Correctness)
Kết quả đầu ra phải đúng với yêu cầu bài toán đã đặt ra.
Tìm max → trả về số lớn nhất
4
Tính tổng quát (Generality)
Áp dụng được cho tất cả các trường hợp của bài toán, không chỉ 1 trường hợp.
Sắp xếp mọi dãy số, không chỉ 1 dãy
5
Tính hiệu quả (Efficiency)
Sử dụng ít tài nguyên (thời gian, bộ nhớ) nhất có thể để giải bài toán.
Tìm kiếm nhị phân nhanh hơn tuần tự
🧮

Ví dụ: Thuật toán tìm số lớn nhất trong 3 số

Bài toán: Cho 3 số A, B, C. Tìm số lớn nhất. Hãy xem từng bước của thuật toán:

B
Bắt đầu (START)
Khởi động thuật toán, chuẩn bị xử lý
1
Nhập A, B, C
Đọc 3 giá trị đầu vào từ người dùng hoặc hệ thống
2
Đặt Max = A
Giả sử A là số lớn nhất ban đầu
3
Nếu B > Max thì Max = B
So sánh B với giá trị Max hiện tại, cập nhật nếu cần
4
Nếu C > Max thì Max = C
So sánh C với giá trị Max hiện tại, cập nhật nếu cần
5
Xuất Max
In ra màn hình giá trị lớn nhất đã tìm được
K
Kết thúc (END)
Thuật toán hoàn thành, dừng xử lý
Kiểm tra với A=5, B=9, C=3: Max=5 → B=9>5 nên Max=9 → C=3<9 giữ nguyên → Kết quả: Max=9 ✓ Đúng!
🌍

Thuật toán ở khắp nơi quanh ta!

🌏 Trong cuộc sống
🍳 Công thức nấu ăn
🗺️ Chỉ đường từ nhà đến trường
💊 Hướng dẫn uống thuốc
🛒 Quy trình thanh toán siêu thị
📋 Hướng dẫn lắp ráp đồ dùng
💻 Trong máy tính
🔍 Google tìm kiếm kết quả
📱 Facebook gợi ý bạn bè
🎵 Spotify đề xuất nhạc
🚗 GPS tính đường đi ngắn nhất
💳 Ngân hàng xét duyệt giao dịch
🎯 Kết luận quan trọng: Lập trình viên không phải viết code — họ trước tiên phải thiết kế thuật toán giải quyết bài toán, sau đó mới dịch thuật toán đó thành ngôn ngữ máy tính!
📝

3 cách diễn đạt thuật toán

📝
Ngôn ngữ tự nhiên
Diễn đạt bằng tiếng Việt/tiếng Anh thông thường. Dễ hiểu nhưng có thể mơ hồ.
"Nếu số chia hết cho 2 thì in ra Chẵn"
📐
Lưu đồ (Flowchart)
Dùng hình ảnh ký hiệu chuẩn. Trực quan, dễ theo dõi luồng xử lý. Học ở Chapter 2!
Hình thoi = điều kiện, hình chữ nhật = xử lý
💻
Mã giả (Pseudocode)
Ngôn ngữ trung gian giữa tự nhiên và ngôn ngữ lập trình. Chính xác nhưng không chạy được.
IF n MOD 2 = 0 THEN PRINT "Chẵn"

🧩 Kiểm tra nhanh!

Chapter 1 — Thuật toán là gì?

1️⃣Thuật toán có bao nhiêu đặc trưng bắt buộc?
→ 5 đặc trưng
2️⃣Đặc trưng "hữu hạn" nghĩa là gì?
→ Thuật toán phải kết thúc sau hữu hạn bước
3️⃣Kể 3 cách diễn đạt thuật toán?
→ Ngôn ngữ tự nhiên, lưu đồ, mã giả
4️⃣Lập trình viên làm gì trước khi viết code?
→ Thiết kế thuật toán giải bài toán trước
Series: Chapter 1 / 8
🤔
📐
Tiếp theo · Chapter 2
Lưu Đồ — Ngôn Ngữ Hình Ảnh
Học các ký hiệu chuẩn ISO của lưu đồ và quy tắc vẽ lưu đồ chuyên nghiệp.

NEXT STEP

Tiếp theo nên học gì

route