Giải thuật Tham lam
đã đăng vào 19, Tháng 4, 2025, 5:32Tham lam (hay tham ăn) là một trong những phương pháp phổ biến nhất để thiết kế giải thuật. Nếu bạn đã đọc truyện dân gian thì sẽ có câu chuyện như thế này: trên một mâm cỗ có nhiều món ăn, món nào ngon nhất ta sẽ ăn trước, ăn hết món đó ta sẽ chuyển sang món ngon thứ hai, và chuyển tiếp sang món thứ ba, … Sau này học QHD thì hiểu rõ bản chất tham lam là 1 nhánh nhỏ của QHD.
Kỹ thuật Two Pointer
đã đăng vào 19, Tháng 2, 2025, 1:40Giải thuật Two Pointer (hoặc còn gọi là "hai con trỏ") là một kỹ thuật giải quyết các bài toán có liên quan đến chuỗi, mảng hoặc dãy số bằng cách sử dụng hai con trỏ di chuyển qua dữ liệu mục tiêu. Giải thuật này thường được sử dụng để tối ưu hóa thời gian thực hiện bằng cách giảm số lần duyệt qua dữ liệu.
Có hai biến thể chính của giải thuật Two Pointer:
Two Pointers Song Song (Parallel Pointers): Trong trường hợp này, hai con trỏ hoặc chỉ mục di chuyển cùng một hướng trên dãy dữ liệu. Thường được sử dụng để tìm kiếm hoặc kiểm tra sự tồn tại của một phần tử trong dãy, hoặc để tính toán khoảng cách giữa hai phần tử trong dãy.
Tìm kiếm nhị phân
đã đăng vào 23, Tháng 10, 2024, 8:57Tìm kiếm nhị phân
Tìm kiếm nhị phân (hay còn gọi là chặt nhị phân) là một trong số các thuật toán cơ bản của khoa học máy tính.
Trong bài viết này, chúng ta sẽ xây dựng một nền tảng lý thuyết, sau đó đưa ra cách cài đặt thuật toán này một cách chuẩn xác.
PHẦN 3_CẤU TRÚC LẶP
đã đăng vào 20, Tháng 10, 2024, 16:02Cấu trúc lặp
1. Câu lệnh for:
Cơ chế hoạt động của lệnh for:
Bước 1: Các lệnh ở phần khởi tạo được thực hiện đầu tiên. Khởi tạo có thể có nhiều lệnh và viết ngăn cách nhau bởi dấu phẩy.
Bước 2: Tính và kiểm tra điều kiện. Nếu điều kiện sai (có giá trị false) thì thoát khỏi vòng lặp.
2. Câu lệnh while:
Khác với câu lệnh for là lệnh lặp với số lần xác định bởi biến điều khiển, câu lệnh while được dùng để lặp đi lặp lại một lệnh với số lần không cần xác định trước.
PHẦN 2_CẤU TRÚC RẼ NHÁNH
đã đăng vào 20, Tháng 10, 2024, 13:12CẤU TRÚC RẼ NHÁNH
Ở dạng thiếu: điều kiện sẽ được tính và kiểm tra. Nếu điều kiện đúng (có giá trị true) thì câu lệnh sẽ được thực hiện, ngược lại thì câu lệnh sẽ bị bỏ qua.
Ở dạng đủ: điều kiện cũng được tính và kiểm tra. Nếu điều kiện đúng (có giá trị true) thì câu lệnh 1 sẽ được thực hiện, ngược lại thì câu lệnh 2 sẽ được thực hiện.
Chào mừng bạn đến với FSC12OJ
đã đăng vào 2, Tháng 12, 2017, 5:00Chào mừng bạn đến với FSC12OJ.
FSC12OJ - Online Judge - là hệ thống online judge