OLHub

Từ đề bài tới thuật toán

Nút thắt nặng nhất của người mới: đọc một đề bằng tiếng Việt rồi không biết bắt đầu từ đâu. Module dạy quy trình có thể lặp lại — bóc đề thành input, output, ràng buộc; giải tay vài ca cụ thể để tìm quy luật; ghi lời giải bằng lưu đồ có cấu trúc; phân rã tới mức mỗi bước gõ được ngay; đặt tên cho nhóm bước xứng đáng thành hàm; và soi các ca biên trước khi chạy. Quy ước xuyên khoá: mỗi mini challenge mở đầu bằng một câu bình thường-hoá việc làm sai — framing chống bỏ cuộc phải rải đều, không dồn vào M4.

9 bài · ~105 phútMiễn phí

Nội dung

Danh sách bài học

  1. 01

    Tổng quan module — từ đề bài tới thuật toán

    Bạn đã đọc được code người khác viết. Module này lấp khoảng trống ngược lại: cầm một đề tiếng Việt và biết bắt đầu từ đâu.

    ~6 phút
  2. 02

    Đọc đề — vào cái gì, ra cái gì, ràng buộc gì

    Đề bài lẫn dữ kiện với yêu cầu. Bước đầu không phải nghĩ cách giải, mà là bóc nó thành ba ô: vào cái gì, ra cái gì, ràng buộc gì.

    ~13 phút
  3. 03

    Làm tay trước khi làm máy — giải ba ca rồi mới rút quy luật

    Người mới mở trình soạn thảo rồi ngồi nhìn màn hình trắng. Người có nghề làm ngược: giải vài ca bằng giấy bút cho quy luật tự lộ ra.

    ~13 phút
  4. 04

    Lưu đồ có cấu trúc — ký hiệu, cách đọc, và chỗ nó bất lực

    Một ký pháp ghi lời giải không phụ thuộc ngôn ngữ nào, chỉ gồm bốn ký hiệu. Nhưng nó không vẽ được mọi thứ — biết trước hai chỗ nó bất lực.

    ~13 phút
  5. 05

    Phân rã — chia tới khi mỗi bước gõ được ngay

    Ô xử lý ở giữa vẫn là một câu tiếng Việt to đùng. Phân rã là chia nó xuống, với đúng một tiêu chí dừng: bước đó gõ được ngay hay chưa.

    ~13 phút
  6. 06

    Hàm — đặt tên cho một nhóm bước, nhận vào gì trả ra gì

    Hàm không phải cú pháp mới phải nhớ, nó là hiện thân của việc phân rã bạn vừa làm: một nhóm bước xứng đáng có tên, nhận vào cái gì và trả ra cái gì.

    ~13 phút
  7. 07

    Ca biên — rỗng, một phần tử, số 0, số âm, trùng

    Lời giải chạy đúng với ca thường rồi gãy với danh sách rỗng. Năm ca biên này gây phần lớn lỗi của người mới, và cả năm đều soi ra được trước khi chạy dòng nào.

    ~13 phút
  8. 08

    Mini challenge — từ đề tới lưu đồ hoàn chỉnh

    Một đề chưa gặp, không giảng gì trước. Bóc ba ô, giải tay ba ca, phân rã, vẽ lưu đồ, soi ca biên — rồi mới mở lời giải mẫu ra đối chiếu.

    ~12 phút
  9. 09

    Tổng kết module — bạn đã có một quy trình lặp lại được

    Bóc đề, giải tay, vẽ lưu đồ, phân rã, đặt tên hàm, soi ca biên. Nhìn lại bảy bài, và tự chấm trước khi sang module cuối: chuyện gì xảy ra khi code sai.

    ~9 phút