Thử thách Thuật toán

Kho GitHub của Dự án

Cập nhật/Ghi chú

08/14/2025: Tất cả các thuật toán đều được viết trong thời kỳ tiền-ChatGPT/tiền-LLM bằng cách sử dụng giải quyết vấn đề truyền thống. AI chỉ được dùng sau đó cho việc sửa ngữ pháp và tạo ảnh thumbnail.

08/13/2025: Đã thêm dự án/mục csci-course-projects chứa một số dự án CS của tôi mà tôi đã làm tốt tại Colorado School of Mines cho bậc đại học từ 2018-2022,

Giới thiệu

Kho lưu trữ này là một bộ sưu tập các triển khai thuật toán và dự án lập trình mà tôi đã làm qua nhiều năm. Phần lớn chúng đến từ các môn học của tôi, các thử thách lập trình thi đấu, hoặc những bài toán ngẫu nhiên mà tôi thấy thú vị. Tôi dùng kho lưu trữ này vừa như một tài liệu tham khảo cá nhân, vừa là nơi theo dõi cách kỹ năng giải quyết vấn đề và lập trình của tôi đã phát triển. Trong bài viết blog này, đặc biệt là ở các phần bên dưới, bạn có thể xem tất cả các dự án và thuật toán khác nhau từ bộ sưu tập này.

Mục lục

Chương trình C
Một số script/dự án tôi làm bằng ngôn ngữ lập trình C/C++

Dự án Môn học CSCI
Một số bài học ban đầu của tôi từ các lớp khoa học máy tính tại Colorado School of Mines

Jumping Jims Encore
Giải pháp của tôi cho một bài toán đồ thị thú vị. Để xem toàn bộ chi tiết, vui lòng xem: jumping-jims-encore-problem/README.md

Phân hoạch tuyến tính 2 (LP2)
Cả một lời giải đệ quy và quy hoạch động cho phát biểu bài toán sau: Cho một dãy S gồm n số nguyên dương (s1, s2, …, sn) và một số nguyên k, hãy phân hoạch S thành k khoảng sao cho tối đa hóa tổng nhỏ nhất trên tất cả các khoảng.

Bài toán người du lịch
Các triển khai của thuật toán Nearest Neighbor và Optimal_TSP (hoán vị vét cạn) cho bài toán người du lịch.

Thử thách HackerRank

Các thuật toán tôi đã triển khai cho các thử thách HackerRank, đây là tài khoản của tôi: mehmet_mhy

Phân tích Dots & Boxes
Phương pháp/thuật toán tôi tạo ra để thử phân tích trò chơi Dots & Boxes. Hiện tại, chỉ có trò chơi 1x1 và 1x2 đã được phân tích. Hãy đọc README.md nằm trong ./dots+boxes/ để biết thêm thông tin.

Clock Solitaire Cơ bản

Một trình giải clock solitaire được thực hiện thông qua cửa sổ dòng lệnh. Để tìm hiểu thêm về clock solitaire thông qua wiki này.

Thuật toán Bogo Sort
Một triển khai thú vị của Bogo Sort. Một trong những thuật toán sắp xếp tệ nhất từng được phát minh, nếu không muốn nói là tệ nhất.

Tìm kiếm Chi phí Đồng nhất
Triển khai của Tìm kiếm Chi phí Đồng nhất, vui lòng xem: uniform_cost_search/README.md

Web Works
Các ghi chú và dự án nhỏ xoay quanh Phát triển Web, bao gồm các ví dụ Sequelize và các triển khai xác thực.