LỜI NÓI ÐẦU N. Wirth, một nhà khoa học máy tính nổi tiếng, tác giả của ngôn ngữ lập trình Pascal, đã đặt tên cho một cuốn sách của ông là “Cấu trúc dữ liệu + Giải thuật = Chương trình”. Ðiều đó nói lên tầm quan trọng của giải thuật trong lập trình nói riêng và trong khoa học máy tính nói chung. Vì lẽ đó giải thuật, với tư cách là một môn học, cần phải được sinh viên chuyên ngành tin học nghiên cứu một cách có hệ thống. Môn học “Giải thuật” được bố trí sau môn. | LỜI NÓI ĐẦU N. Wirth một nhà khoa học máy tính nổi tiếng tác giả của ngôn ngữ lập trình Pascal đã đặt tên cho một cuốn sách của ông là Cấu trúc dữ liệu Giải thuật Chương trình . Điều đó nói lên tầm quan trọng của giải thuật trong lập trình nói riêng và trong khoa học máy tính nói chung. Vì lẽ đó giải thuật với tư cách là một môn học cần phải được sinh viên chuyên ngành tin học nghiên cứu một cách có hệ thống. Môn học Giải thuật được bố trí sau môn Cấu trúc dữ liệu trong chương trình đào tạo kỹ sư tin học nhằm giới thiệu cho sinh viên những kiến thức cơ bản nhất những kỹ thuật chủ yếu nhất của việc PHÂN TÍCH và THIẾT KẾ giải thuật. Các kỹ thuật được trình bày ở đây đã được các nhà khoa học tin học tổng kết và vận dụng trong cài đặt các chương trình. Việc nắm vững các kỹ thuật đó sẽ rất bổ ích cho sinh viên khi phải giải quyết một vấn đề thực tế. Giáo trình này được hình thành trên cơ sở tham khảo cuốn sách Data Structure and Algorithms của Aho những kinh nghiệm giảng dạy của bản thân và các bạn đồng nghiệp. Mặc dù đã có nhiều cố gắng trong quá trình biên soạn nhưng chắc chắn còn nhiều thiếu sót rất mong nhận được sự đóng góp của quý bạn đọc. Cần thơ ngày 8 tháng 12 năm 2003 Nguyễn Văn Linh Sưu tầm bởi Giải thuật Tống quan PHẦN TỔNG QUAN 1. Mục đích yêu cầu Môn học giải thuật cung cấp cho sinh viên một khối lượng kiến thức tương đối hoàn chỉnh về phân tích và thiết kế các giải thuật lập trình cho máy tính. Sau khi học xong môn học này sinh viên cần - Nắm được khái niệm thời gian thực hiện của chương trình độ phức tạp của giải thuật. Biết cách phân tích đánh giá giải thuật thông qua việc tính độ phức tạp. - Nắm được các giải thuật sắp xếp và phân tích đánh giá được các giải thuật sắp xếp. - Nắm được các kĩ thuật thiết kế giải thuật vận dụng vào việc giải một số bài toán thực tế. - Nắm được các phương pháp tố chức lưu trữ thông tin trong tập tin và các giải thuật tìm xen xoá thông tin trong tập tin. 2. Đối tượng sử dụng Môn học giải thuật được .