Bài giảng Cấu trúc dữ liệu và giải thuật: Bài 2 - Hoàng Thị Điệp

Bài giảng "Cấu trúc dữ liệu và giải thuật - Bài 2: Phân tích thuật toán" giúp người học hiểu về tính đúng đắn, tính hiệu quả, đo thời gian chạy bằng thực nghiệm; thời gian chạy tốt nhất, trung bình, xấu nhất; vấn đề đánh đổi không gian và thời gian; sử dụng kí hiệu ô lớn. | HK I, 2012-2013 Bài 2: Phân tích thuật toán Giảng viên: Hoàng Thị Điệp Khoa Công nghệ Thông tin – Đại học Công Nghệ A principle to respect whenever you program: Pay attention to the cost! diepht@vnu INT2203/w02 2 Mục tiêu bài học • • • • • Thuật toán: tính đúng đắn, tính hiệu quả Đo thời gian chạy bằng thực nghiệm Thời gian chạy tốt nhất, trung bình, xấu nhất Vấn đề đánh đổi không gian và thời gian Sử dụng kí hiệu ô lớn – Định nghĩa hình thức – Các cấp độ thời gian chạy – Kỹ thuật đánh giá thuật toán bởi ký hiệu ô lớn • Thuật toán không đệ quy • Thuật toán đệ quy diepht@vnu INT2203/w02 3 Giải thuật nào tốt hơn? int factorial (int n) { if (n <= 1) return 1; else return n * factorial(n-1); } int factorial (int n) { if (n<=1) return 1; else { fact = 1; for (k=2; k<=n; k++) fact *= k; return fact; } } diepht@vnu INT2203/w02 4 Thuật toán • Thuật toán được hiểu là sự đặc tả chính xác một dãy các bước có thể thực hiện được một cách máy móc để giải quyết một vấn đề • Biểu diễn thuật toán – mã, giả mã, sơ đồ khối • Tính đúng đắn (correctness) – đòi hỏi trước hết • Tính hiệu quả (efficiency) – quan .

Không thể tạo bản xem trước, hãy bấm tải xuống
TỪ KHÓA LIÊN QUAN
TÀI LIỆU MỚI ĐĂNG
63    350    2    26-06-2024
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.