
Sinh viên hoặc người trái ngành muốn xây nền tảng lập trình từ đầu
Người muốn học Python để chuẩn bị đi tiếp sang Data, AI, Automation hoặc phát triển phần mềm cần một khóa nhập môn đủ kỹ để có thể đi xa hơn.
Người đi làm muốn dùng Python để tự động hóa công việc lặp đi lặp lại (xử lý file, báo cáo, dữ liệu) mà chưa có nền tảng lập trình.
Yêu cầu đầu vào: Chỉ cần biết sử dụng máy tính cơ bản (gõ phím, mở ứng dụng, quản lý tập tin). Khóa học dành cho người mới bắt đầu.
Sau khi hoàn thành khóa học, HV sẽ:
Tự tin viết, sửa lỗi được chương trình Python cơ bản để đáp ứng nhu cầu.
Biết dùng AI như công cụ hỗ trợ lập trình và biết cách kiểm tra, đánh giá kết quả AI đưa ra.
Làm chủ các cấu trúc dữ liệu có sẵn của Python: chuỗi, List, Tuple, Set, Dictionary - và biết chọn cấu trúc phù hợp cho từng tình huống.
Biết cách phân tích một bài toán trước khi viết code
Hiểu Big O để cảm nhận hiệu năng của chương trình
Cài đặt được các thuật toán tìm kiếm (Linear, Binary) và sắp xếp (Bubble, Insertion) cơ bản.
Hiểu và cài đặt thuật toán đệ quy (hàm tự gọi chính nó)
Tự xây dựng các cấu trúc dữ liệu có tính ứng dụng cao (Stack, Queue và Linked List) và các tình huống ứng dụng.
PHẦN A - NHẬP MÔN LẬP TRÌNH PYTHON
Làm quen Python & Môi trường lập trình
Hiểu cách máy tính lưu và xử lý thông tin (Biến, kiểu dữ liệu và các phép toán cơ bản)
Nhập và xuất dữ liệu, ứng dụng viết chương trình tương tác được với người dùng
Câu lệnh điều kiện để kiểm tra, xử lý tình huống trong chương trình
Vòng lặp và ứng dụng tự động xử lý các tác vụ giống nhau
Hàm và cách chia nhỏ chương trình thành các hàm - tư duy modular: mỗi hàm làm một việc, dễ đọc và dễ sửa hơn.
Kỹ thuật debug và các loại lỗi thường gặp
Sử dụng AI để hỗ trợ lập trình: gợi ý mã lệnh, giải thích lỗi và tư duy kiểm chứng kết quả từ AI
PHẦN B - CẤU TRÚC DỮ LIỆU CÓ SẴN TRONG PYTHON
Xử lý chuỗi và dữ liệu văn bản
List và Tuple
Giới thiệu
Thực hành giải quyết tình huống
Set và Dictionary
Giới thiệu
Thực hành giải quyết tình huống
Kết hợp và lựa chọn cấu trúc dữ liệu phù hợp
Kết hợp List và Dictionary - List các Dictionary
Cách chọn cấu trúc dữ liệu phù hợp để giải quyết tình huống thực tế
Thực hành tổng hợp - xây chương trình quản lý học viên: thêm, xóa, tìm kiếm, thống kê điểm số.
PHẦN C - TƯ DUY THUẬT TOÁN: TÌM KIẾM & SẮP XẾP
Phân tích bài toán Tìm kiếm
Phân tích bài toán trước khi viết code - tư duy 'đọc đề, xác định input/output, liệt kê bước' giúp tránh code sai ngay từ đầu.
Phác thảo logic bằng ngôn ngữ tự nhiên trước khi dịch sang Python.
Big O trực quan - cảm nhận tốc độ chương trình khi dữ liệu tăng lên: O(1) tra cứu tức thì, O(n) duyệt toàn bộ, O(n²) lồng hai vòng lặp.
Linear Search và Binary Search - tại sao tìm kiếm nhị phân nhanh hơn tuyến tính hàng nghìn lần khi dữ liệu lớn.
Phân tích bài toán Sắp xếp
Sắp xếp dữ liệu - dữ liệu có thứ tự giúp khai thác và tra cứu hiệu quả hơn
Bubble Sort và Insertion Sort - hiểu cơ chế một cách trực quan và cài đặt
Sử dụng sort() và sorted() - biết dùng thư viện chuẩn: nhanh hơn, ít lỗi hơn, đúng cách làm trong thực tế.
Thực hành tình huống kết hợp thuật toán Sắp xếp và Tìm kiếm
PHẦN D - TỰ XÂY DỰNG CẤU TRÚC DỮ LIỆU
Đệ quy - hàm tự gọi chính nó, giúp giải bài toán lớn bằng cách chia thành bài toán nhỏ hơn, như tính giai thừa, tháp Hà Nội…
Stack (LIFO - vào sau ra trước) - nền tảng của undo/redo, nút Back trình duyệt và cơ chế gọi hàm lồng nhau.
Queue (FIFO - vào trước ra trước) - mô phỏng hàng đợi thực tế: in ấn, xử lý yêu cầu, tải trang theo thứ tự nhận.
Cài đặt Stack và Queue bằng List - hiểu cấu trúc dữ liệu qua code tự viết
Linked List - mỗi phần tử tự giữ 'con trỏ' đến phần tử kế tiếp, nền tảng tư duy cho cấu trúc dữ liệu nâng cao.
Ứng dụng thực hành - mini project tổng hợp: to-do list với undo bằng Stack, xử lý hàng đợi bằng Queue và tính giai thừa bằng đệ quy.
Học viên thi đạt kết quả cuối môn học sẽ được cấp chứng nhận "Lập trình Python và Cấu trúc dữ liệu" do Trung Tâm Tin Học - Trường ĐH Khoa Học Tự Nhiên cấp.