Tải bản đầy đủ (.ppt) (12 trang)

Bài 5 tiet 5

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (610.81 KB, 12 trang )


Thửùc hieọn thaựng 10 naờm 2010

VD1: Cho d·y sè A cã: 1, 2, 9, 4, 10, 5; k=4
VD2: Cho d·y sè B cã: 1, 2, 4, 5, 9, 12; k=5

Bài toán: Dãy A được xếp thứ tự gồm N số nguyên khác
nhau từ a
1
.. a
N
; và số nguyên k. Cần biết có hay không
chỉ số i (1 i N) mà a
i
= k. Nếu có hãy cho biết chỉ
số đó.
Bài toán trên có gỡ khác so với
bài toán tỡm kiếm theo thuật
toán tỡm kiếm tuần tự?
B I TO N V THU T TO N
THUT TON TèM KiM NH PHN

Bài toán: Cho dãy A gồm N số nguyên khác nhau và dãy
t ng có a
1
.. a
N
; và số nguyên k.Cần biết có hay không
chỉ số i (1 i N) mà a
i
= k. Nếucó hãy cho biết chỉ số


đó.
Xác định bài toán:
Input: Số nguyên dương N, dãy A được
sắp xếp tng a
1
.. a
N
; số nguyên k
Output: + Chỉ số i khi a
i
= k
+ Thông báo không có số nào trong
dãy A bằng k
Hãy xác
định bài
toán trên?
B I TO N V THU T TO N
THUT TON TèM KiM NH PHN

Nhận xét: Vỡ dãy A là dãy tng nên sau mỗi
lần so sánh với khóa k đã cho ta sẽ
thu hẹp được phạm vi tỡm kiếm
+ Nếu a
Giua
= k thỡ giua là chỉ số cần tỡm rồi kết thúc thuật toán.

+ Nếu a
Giua
> k việc tỡm kiếm chỉ thực hiện trên dãy
a

1
, a
2
, a
Giua -1
.

+ Nếu a
Giua
< k thỡ thực hiện tỡm kiếm trên dãy
a
Giua + 1
, a
Giua + 2
, a
N

ý tưởng:
+ Chọn số hạng ở gia dãy a
Giua
so sánh với k, trong
đó Giua = [(N + 1)/2]

Quá trỡnh trên sẽ được lặp lại một số lần cho đến khi hoặc đã tỡm
thấy khóa k trong dãy A hoặc phạm vi tỡm kiếm bằng rỗng.
B I TO N V THU T TO N
THUT TON TèM KiM NH PHN

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×