1. Trang chủ
  2. » Công Nghệ Thông Tin

Bai 4 phan Binary Search

7 5 0

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 7
Dung lượng 1,99 MB

Nội dung

Bài của nhóm mình đến đây là kết thúc.[r]

(1)

Bài 4:

Bài 4: Bài Toán Và Bài Toán Và Thuật Toán

Thuật Tốn

Nhóm 4:

Nhóm 4:

Nguyễn Tấn Quang

Nguyễn Tấn Quang

Triết ĐT

Triết ĐT

Trần Trọng Văn

Trần Trọng Văn

Lộc

Lộc

Liêm

(2)

ThuËt toán tìm kiếm

Hai bn (Bi v Bụng) chơi trốn tm, Bông trốn vào trong nhng mũ ông già Nôen Hãy cách tm mũ mà Bông trốn? Cho biết có nhng cách nào?

B«ng trốn đâu ?

C1: Tìm kiếm tuần tù ( më tõng mò)

C2: Do mũ xếp lớn dần, hai mũ đầu nhỏ hơn

(3)

Tht to¸n tìm kiÕm nhị phân

ý t ởng:

S dụng tính chất dãy A xếp tăng, ta tỡm cách thu hẹp nhanh phạm vi tỡm kiếm cách so sánh k với số hạng dãy (agiữa), xảy ba tr ng hp:

- Nếu agiữa= k => tỡm đ îc chØ sè, kÕt thóc;

- Nếu agiữa > k => dãy A đ ợc xếp tăng nên việc tỡm kiếm thu hẹp xét từ a1  agiữa - 1;

- Nếu agiữa < k => dãy A đ ợc xếp tăng nên việc tỡm kiếm thu hẹp xét từ agiữa +  aN

(4)

M« thuật toán

Mô thuật toán ttỡỡmm kiếm nhị phân kiếm nhị phân

10 10 9 9 8 8 7 7 6 6 5 5 4 4 3 3 2 2 1 1 i i 33 33 31 31 30 30 22 22 21 21 9 9 6 6 5 5 4 4 2 2 A A

 Víi k = 21 vµ d·y A gồm 10 số hạng nh sau:

L ợt thứ nhất: a: agiữagiữa a a55 = 9; < = 9; < 21

 vïng t vïng tììm kiÕm thu hĐp ph¹m vi tõ am kiÕm thu hĐp ph¹m vi tõ a66 a a1010;;

33 33 31 31 30 30 22 22 21 21

L ỵt thø hai

L ợt thứ hai: a: agiữagiữa a a88 = 30; 30 > = 30; 30 > 21

 vïng t vïng tììm kiÕm thu hĐp ph¹m vi tõ am kiÕm thu hĐp ph¹m vi tõ a66 a a77;; L ỵt thø ba

L ợt thứ ba: a: agiữagiữa a a66 = 21; = 21; 21= 21 21= 21  VËy sè cần tỡm i =

(5)

Cách 1: Liệt kê bước Cách 1: Liệt kê bước

B íc 1: NhËp N, c¸c sè hạng a

B ớc 1: Nhập N, số hạng a11, a, a22,,, a, aN N

và giá trị khoá k;

và giá trị khoá k;

B íc 2:

B íc 2: ĐĐÇu Çu  1, Cuèi 1, Cuèi  N; N;

B íc 3: Gi

B íc 3: Giữữa a  [( [(ĐĐÇu + Ci)/2];Çu + Ci)/2];

B íc 4: NÕu a

B íc 4: NÕu aGi÷aGi÷a = k th = k thỡỡ thông báo số Gi thông báo số Gia a

kÕt thóc;

råi kÕt thóc;

B íc 5: NÕu a

B ớc 5: Nếu aGiữaGiữa > k th > k thỡỡ đặt Cuối = Gi đặt Cuối = Giữữa - rồia - rồi

chun sang b íc 7;

chun sang b íc 7;

B íc 6:

B íc 6: ĐầuĐầu  Gi Giữữa + 1;a + 1;

B íc 7: NÕu

B íc 7: NÕu ĐĐÇu Çu  Ci th Ci thìì thông báo dÃy A thông báo dÃy A không có

số hạng có giá trị k, råi kÕt thóc;

sè h¹ng cã giá trị k, kết thúc;

B íc 8: Quay l¹i b íc 3.

(6)

Quy ớc khối sơ đồ thuật toán Quy ớc khối sơ đồ thuật toán

Bắt đầu thuật toán

Bắt đầu thuật toán

Dùng để nhập xuất d

Dùng để nhập xuất dữữ liệu liệu.

Dùng để gán giá trị tính tốn.

Dùng để gán giá trị tính tốn.

XÐt ®iỊu kiƯn rÏ nhánh theo

Xét điều kiện rẽ nhánh theo mét

trong hai điều kiện đúng, sai.

trong hai điều kiện đúng, sai.

KÕt thóc tht to¸n

KÕt thóc tht to¸n

ĐK

đ

S

KT

(7)

Ngày đăng: 03/06/2021, 01:12

w