Hệ ký hiệu tiệm cận Các ký hiệu mà ta dùng để mô tả thời gian thực hiện tiệm cận của một thuật toán được định nghĩa theo dạng các hàm có các lĩnh vực là tập hựp các số tựnhiên N = {0, 1, 2,…}. Các ký hiệu như vậy tỏ ra tiện dụng
Các bài toán về thuật toán chia để trị
1.4- 1 Giả sử ta đang so sánh các cách thực thi phương pháp sắp xếp chèn và sắp xếp trộn trên cùng một máy. Với các đdu vào có kích cỡn> tiến trình sắp xếp chèn chạy trong 8n2 bước, trong khi tiến trình sắp xếp trộn chạy trong 64nìg n bước. Với các
Phân tích các thuật toán chia để trị
Khi một thuật toán chứa một lệnh gọi đệ quy lên chính nó, thời gian thực hiện của nó thường được mô tả bởi một phương trình truy toán hoặc phép truy toán, mô tá thời gian thực hiện chung trên một bài toán có kích cỡn theo dạng thời gian thực hiện trên các
Cách thiết kế các thuật toán
Có nhiều cách để thiết kế các thuật toán. Phương pháp sắp xếp chèn sử dụng cách tiếp cận gia^[incremental]: khi sáp xếp mảng con A[\.j – 1], ta chèn một thành phần A[ý] vào đúng chỗ của nó, cho ra mảng con đã sắp xếp A[l.j]. Trong đoạn này, ta xem xét một cách
Phân tích trường hợp xấu nhất trong thuật toán sắp xếp chèn
Trong kỹ thuật phân tích sắp xếp chèn trên đây, ta đã xem xét cả ca tốt nhất, ỏ đó mảng đầu vào đã được sắp xếp sẩn, lẫn trường hợp xấu nhất, ở đó mảng đầu vào được sắp xếp đảo ngược. Tuy nhiên, với phần còn lại của cuốn sách, ta thường tập
Phân tích các thuật toán cơ bản
Phân tích một thuật toán thường hàm ý tiên liệu các tài nguyên mà thuật toán yêu cầu. Thỉnh thoảng, các tài nguyên như bộ nhớ, băng thông, hoặc các cổng logic là những yếu tô” được quan tâm hàng đầu, song đa phần chính thời gian tính toán mới là yếu tố mà ta
Thuật toán sắp xếp chèn là gì ?
Trước tiên, ta tìm hiểu phương pháp sắp xếp chèn[insertion sort],đây là một thuật toán hiệu quả để sắp xếp các thành phần có số lượng nhỏ. Kỹ thuật sắp xếp chèn làm việc giống như cách thức mà nhiều người xếp một tay bài tây hay bài rumi. Ta bất đầu bằng một tay
Khái niệm về thuật toán máy tính
Để bắt đầu, ta tìm hiểu các vấn đề tính toán nói chung và các thuật toán cần thiết để giải quyết chúng, lấy bài toán sắp xếp làm ví dụ thực tiễn. Chương này cũng nêu một “mã giả” quen thuộc với những bạn đọc đã từng lập trình trên máy tính để nêu