You are on page 1of 15

THUẬT TOÁN

CƠ BẢN
BÀI 2. PHÂN TÍCH
THUẬT TOÁN
PHÂN TÍCH THUẬT TOÁN
 Tính hiệu quả của thuật toán

 Đánh giá thời gian thực hiện thuật toán

 Các quy tắc đánh giá

 Một số ví dụ

 Bài tập

2
Thuật toán tìm đường đi

THUẬT TOÁN CƠ BẢN 3


Tính hiệu quả của thuật toán
 Tìm đường đi từ SVĐ Mỹ Đình tới Hồ Hoàn Kiếm sao cho
thỏa mãn một trong các tiêu chí sau:
Độ dài ngắn nhất?
Thời gian nhanh nhất?
Chi phí thấp nhất mà vẫn đáp ứng về thời gian?

 Chi phí để xây dựng một ngôi nhà sao cho thấp nhất có thể

 Chi phí để làm ra 100 cái bánh Chưng thấp nhất có thể

 Giải quyết các công việc cần phải có tính hiệu quả

THUẬT TOÁN CƠ BẢN 4


Tính hiệu quả của thuật toán
 Ví dụ: vẽ sơ đồ khối thuật toán kiểm tra xem số nguyên
dương n >= 2 có phải là số nguyên tố hay không?

 Hãy ước lượng thời gian thực hiện chương trình với siêu
máy tính có thể tính được 1014 (một trăm nghìn tỷ) phép
tính trong một giây nếu n là số nguyên tố có 26 chữ số?

THUẬT TOÁN CƠ BẢN 5


Thuật toán 1
 Ý tưởng:
Kiểm tra các số từ 2 đến n – 1
xem có số nào là ước số của n
hay không?
Nếu có thì kết luận n không là
số nguyên tố, dừng thuật toán
Nếu tất cả các số từ 2 đến n – 1
không có số nào là ước số của n
thì n là số nguyên tố!

THUẬT TOÁN CƠ BẢN 6


Thuật toán 1
 Trường hợp n là số nguyên
tố thì thuật toán phải thực
hiện n – 2 phép toán mod

 Nếu n có 26 chữ số thì siêu


máy tính sẽ mất khoảng thời
gian để thực hiện là:

THUẬT TOÁN CƠ BẢN 7


Thuật toán 2
 Ý tưởng: chỉ cần kiểm tra các số
từ 2 đến 𝑛

 Nếu n có 26 chữ số thì siêu máy


tính sẽ mất khoảng thời gian để
thực hiện với thuật toán 2 là:

THUẬT TOÁN CƠ BẢN 8


Tiêu chuẩn đánh giá thuật toán tốt
 Thuật toán đơn giản, dễ hiểu, dễ cài đặt (lập trình)

 Thuật toán hiệu quả:


Thời gian (hoặc số phép toán) thực hiện thuật toán (thường là
trong trường hợp xấu nhất là mất bao lâu?)
Dung lượng bộ nhớ sử dụng phải khả thi (không vượt quá giới
hạn cho phép) trong quá trình thực hiện thuật toán

THUẬT TOÁN CƠ BẢN 9


Bài tập
 Viết sơ đồ khối của bài toán: giải phương trình bậc nhất
ax+b=0 và diễn giải các bước thực hiện.

 Viết sơ đồ khối của bài toán: giải phương trình bậc hai
ax2+bx+c=0 và diễn giải các bước thực hiện.

 Viết sơ đồ khối của bài toán: in các số từ 1 đến n và diễn


giải các bước thực hiện.

 Viết sơ đồ khối của bài toán: kiểm tra 1 số có phải số


nguyên tố hay không? và diễn giải các bước thực hiện.

THUẬT TOÁN CƠ BẢN 10


Ví dụ sơ đồ khối chương
trình giải PT: ax + b = 0

11
Giải phương trình bậc 2

THUẬT TOÁN CƠ BẢN 12


 Ví dụ in các số từ 1 đến n

THUẬT TOÁN CƠ BẢN 13


 Kiểm tra số nguyên tố.

 Thuật toán 1

THUẬT TOÁN CƠ BẢN 14


Thuật toán 2
 Ý tưởng: chỉ cần kiểm tra các số
từ 2 đến 𝑛

 Thuật toán 2: kiểm tra số


nguyên tố.

THUẬT TOÁN CƠ BẢN 15

You might also like