Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 10

Bài 4: Bài toán và thuật toán

vPhần lll : Bài toán tìm kiếm


1) B
ài t
oá n
• Cho dãy A gồm N số nguyên, đôi một khác
nhau: a1, a2,… aN và một số nguyên k. Cần
biết có hay không chỉ số
• I (1 i N) mà ai = k
• Nếu có hãy cho biết số đó
2) Ý
t ưở
ng
• Lần lượt từ số hạng thứ nhất, ta so sánh giá trị số hạng đang xét với
khóa cho đến khi hoặc gặp một số hạng bằng khóa hoặc dãy đã được
xét hết và không có giá trị nào bằng khóa
• Trong trường hợp thứ hai dãy A không có số hạng nào bằng khóa
3) T
h uật
toá
n
Bước 1: Nhập số N, dãy A = a1, a2,…,aN và k

Bước 2: i ← 1

Bước 3: Nếu ai = k thì thông báo chỉ số i, rồi kết thúc

Bước 4: i ← i + 1

Bước 5: Nếu I > N thì thông báo dãy A không có số hạng nào giá trị
bằng k rồi kết thúc

Bước 6: Quay lại bước 3


Nhập N và a1,
a2,… aN, k
VD Nhập a1=5,
a2=2,a3=1, k=3

I1 I1

K = 3 / N=3
Đúng Đưa ra i rồi 152 = 3?
ai =k? a 5 2 1
kết thúc
i 1 2 3
Sai
Sai
I2
13 + 1 = 3
24
I  I+ 1

Sai 23 > 3 ?
4
Sai
i>N

Đúng
Thông báo dãy A không Thông báo dãy A không
có số hạng có giá trị = k có số hạng có giá trị = k
rồi kết thúc rồi kết thúc
Cảm ơn thầy và các bạn
đã lắng nghe
VD
K = 2 và N = 10
A 5 7 1 4 2 9 8 11 25 51
i 1 2 3 4 5 - - - - -

Với I = 5 thì a5 = 2

K = 6 và N = 10
A 5 7 1 4 2 9 8 11 25 51
i 1 2 3 4 5 6 7 8 9 10 11

Với mọi I từ 1 đến 10 không có ai có giá trị


bằng 6

You might also like