Bài giảng Cấu trúc dữ liệu và giải thuật: Phân tích độ phức tạp của giải thuật - Nguyễn Tri Tuấn

26 75 1
Bài giảng Cấu trúc dữ liệu và giải thuật: Phân tích độ phức tạp của giải thuật - Nguyễn Tri Tuấn

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bài giảng Cấu trúc dữ liệu và giải thuật: Phân tích độ phức tạp của giải thuật cung cấp cho người học các kiến thức về chi phí của giải thuật, độ phức tạp của giải thuật, Big-O,... Mời các bạn cùng tham khảo nội dung chi tiết.

Cấu trúc liệu & Giải thuật (Data Structures and Algorithms) Phân tích độ phức tạp giải thuật Nguyễn Tri Tuấn Khoa CNTT – ĐH.KHTN.Tp.HCM Email: nttuan@fit.hcmus.edu.vn LOGO CuuDuongThanCong.com https://fb.com/tailieudientucntt Thuật ngữ  Chi phí (cost)  Độ phức tạp (complexity)  Phân tích độ phức tạp (complexity analysis) 2/38 CuuDuongThanCong.com https://fb.com/tailieudientucntt Nội dung Chi phí giải thuật Độ phức tạp giải thuật Big-O, Big-, Big- www.themegallery.com CuuDuongThanCong.com https://fb.com/tailieudientucntt Chi phí giải thuật (1)  Tính tổng n số nguyên: sum = 0; for (i = 0; i < n; i++) sum += i;  Giải thuật Bubble sort: for (i = n-1; i > 0; i ) for (j = 1; j a[j]) { temp = a[j-1]; a[j-1] = a[j]; a[j] = temp; } CuuDuongThanCong.com https://fb.com/tailieudientucntt Chi phí giải thuật (2)  Cùng vấn đề, giải nhiều giải thuật khác  VD Sắp xếp mảng  Bubble sort, Heap sort, Quick sort,…  Mỗi giải thuật có chi phí (cost) khác  Chi phí thường tính dựa trên:  thời gian (time)  nhớ (space/memory)  Chi phí “thời gian” thường quan tâm nhiều CuuDuongThanCong.com https://fb.com/tailieudientucntt Chi phí giải thuật (3)  Tuy nhiên, việc dùng khái niệm “thời gian” theo nghĩa đen (vd giải thuật A chạy 10s) khơng ổn, vì:  tuỳ thuộc vào loại máy tính (vd máy Dual-Core chạy nhanh Pentium II)  tuỳ thuộc ngơn ngữ lập trình (vd Giải thuật viết C/Pascal chạy nhanh gấp 20 lần viết Basic/LISP)  Do đó, người ta thường dùng “đơn vị đo logic” (vd số phép tính sở) thay cho đơn vị đo “thời gian thật” (mili-giây, giây,…)  VD Chi phí để xếp mảng n phần tử giải thuật Bubble sort n2 (phép tính sở) CuuDuongThanCong.com https://fb.com/tailieudientucntt Nội dung Chi phí giải thuật Độ phức tạp giải thuật Big-O, Big-, Big- 7/38 CuuDuongThanCong.com https://fb.com/tailieudientucntt Độ phức tạp giải thuật (1) VD Tính độ phức tạp giải thuật sau sum = 0; for (i=0; i

Ngày đăng: 11/01/2020, 17:51

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan