Cấu Trúc Dữ Liệu Giải Thuật - Chương 3: Tìm Kiếm
-
Upload
gio-chelsea -
Category
Documents
-
view
20 -
download
9
description
Transcript of Cấu Trúc Dữ Liệu Giải Thuật - Chương 3: Tìm Kiếm
-
Chng 4: TM KIM(SEARCHING)
Chng 3: Tm kim
Ni dungKhi qut v tm kimTm tuyn tnh (Linear Search)Tm nh phn (Binary Search)
*
Chng 3: Tm kim
Khi qut v tm kimTm kim l mt yu cu rt thng xuyn trong i sng hng ngy cng nh trong tin hcV d:Tm kim mt sinh vin trong lpTm kim mt tp tin, th mc trong my n gin ta xt bi ton tm kim nh sau:Cho mt dy s gm cc phn t a1, a2, ..., an. Cho bit trong dy ny c phn t no c gi tr bng X (cho trc) hay khng?*Chng 3: Tm kim
Chng 3: Tm kim
Khi qut v tm kimXt hai cch tm kim:Tm kim tuyn tnh (Linear Search) hay cn gi l tm kim tun t (Sequential Search)Tm kim nh phn (Binary Search)*
Chng 3: Tm kim
Ni dungKhi qut v tm kimTm tuyn tnh (Linear Search)Tm nh phn (Binary Search)
*
Chng 3: Tm kim
2. Tm tuyn tnh (Linear Seach) tng:Bt u t phn t u tin ca danh sch, so snh ln lt tng phn t ca danh sch vi gi tr X cn tmNu c phn t bng X, thut ton dng li (thnh cng)Nu n cui danh sch m khng c phn t no bng X, thut ton dng li (khng thnh cng)
If we find a match, the search terminates successfully by returning the index of the elementIf the end of the list is encountered without a match, the search terminates unsuccessfully
*
Chng 3: Tm kim
2. Tm tuyn tnh (Linear Seach)Thut ton:B1: i = 0 ;// bt u t phn t u tinB2: so snh A[i] vi X, c 2 kh nng : A[i] = X : Tm thy. Dng A[i] X : Sang B3B3: i=i+1 // Xt phn t tip theo trong mngNu i=n : Ht mng, khng tm thy. DngNgc li: lp li B2*
Chng 3: Tm kim
2. Tm tuyn tnh (Linear Seach)*X=8V d:i=0i=1i=2Dng
Chng 3: Tm kim
2. Tm tuyn tnh (Linear Seach)*5Kha tm 71352162815V tr = 2Tm thnh cngS ln so snh: 3
Chng 3: Tm kim
*971352162815Khng tm thyS ln so snh: 8Kha tm 2. Tm tuyn tnh (Linear Seach)
Chng 3: Tm kim
2. Tm tuyn tnh (Linear Seach)void lsearch (int list[], int n, int key) { int flag = 0;// gi s lc u cha tm thyfor(int i=0; i