Đề tài Cấu trúc dữ liệu và giải thuật căn bản
Ch¬ng 1. thiÕt kÕ gi¶i thuËtvµ ®Ö quy
1. C¸c kh¸i niÖm
1.1. Gi¶i thuËt vµ cÊu tróc d÷ liÖu
a. Giíi thiÖu m«n häc
Khi gi¶i mét bµi to¸n ta cÇn:
- ThiÕt lËp c¸c th«ng tin vµo, gåm d÷ liÖu ban ®Çu
- CÊu tróc l¹i c¸c d÷ liÖu ®Ó cã thÓ ®a ®îc vµo m¸y tÝnh
- X©y dùng c¸c gi¶i thuËt (thuËt to¸n) ®Ó gi¶i bµi to¸n trªn m¸y
§©y chÝnh lµ néi dung m«n häc CÊu tróc d÷ liÖu vµ gi¶i thuËt
b. §Þnh nghÜa gi¶i thuËt
Gi¶i thuËt lµ d·y c¸c c©u lÖnh chÆt chÏ x¸c ®Þnh tr×nh tù thao t¸c trªn mét ®èi tîng nµo ®ã sao cho sau h÷u h¹n bíc nhËn ®îc kÕt qu¶ mong muèn.
c. C¸c VÝ dô
- T×m íc sè chung lín nhÊt cña 2 sè nguyªn d¬ng x, y
Gi¶i thuËt t×m ¦SCLN th«ng qua c¸c bíc:
Bíc 1: NÕu x > y g¸n x := x - y, nÕu kh«ng th× y:= y - x;
Bíc 2: Thùc hiÖn bíc 1 cho ®Õn khi x = y;
Bíc 3: ¦SCLN = x (hoÆc = y)
§©y lµ mét gi¶i thuËt víi Bíc 1, Bíc 2 h÷u h¹n bíc (gi¶i thuËt ¥clid)
Víi x = 24, y= 18
x := 24 - 18 = 6, y = 18
y := 18 - 6 = 12, x = 6
y := 12 - 6 = 6 = x, dõng ¦SCLN = 6
d. D÷ liÖu vµ cÊu tróc d÷ liÖu
- D÷ liÖu lµ nh÷ng th«ng tin ban ®Çu, gåm nh÷ng ®¹i lîng ®Þnh lîng.
- §Ó gi¶i bµi to¸n ngêi ta ph¶i s¾p xÕp d÷ liÖu theo mét cÊu tróc hîp lý nµo ®ã ®Ó viÖc gi¶i bµi to¸n ®îc dÔ dµng. Vµ viÖc s¾p xÕp ®ã ®îc gäi lµ cÊu tróc d÷ liÖu.
1.2. Ng«n ng÷ diÔn ®¹t gi¶i thuËt
a. DiÔn ®¹t theo ng«n ng÷ tù nhiªn
VÝ dô phÇn 1b ë trªn ®· dïng ng«n ng÷ tù nhiªn ®Ó diÔn ®¹t.
b. DiÔn ®¹t theo gi¶ Pascal
Xen gi÷a ng«n ng÷ lËp tr×nh Pascal ®Ó diÔn ®¹t gi¶i thuËt.
VÝ dô:
Bíc 1: If x > y then x := x – y Else y := y- x;
Bíc 2: Thùc hiÖn Bíc 1 Until x = y;
c. DiÔn ®¹t díi d¹ng thñ tôc hoÆc hµm cña mét ng«n ng÷ lËp tr×nh nµo ®ã (Pascal, C,…)
Trong khu«n khæ m«n häc ta sö dông ng«n ng÷ lËp tr×nh Pascal
1.3. Mét sè c©u lÖnh cña Pascal
(Tù häc)
1.4. C¸c bíc ®Ó gi¶i mét bµi to¸n
- M«®un ho¸ bµi to¸n (ph©n r· bµi to¸n): chia bµi to¸n lín ra c¸c bµi to¸n con vµ viÕt c¸c thñ tôc thùc hiÖn chóng.
- Tinh chØnh m«®un (module) theo mét ng«n ng÷ nµo ®ã
- R¸p l¹i thµnh ch¬ng tr×nh
VÝ dô 1:
Function USCLN (x, y: interger): interger
Begin
Repeat
If x > y Then x := x- y Else y ;= y – x;
Until x = y;
USCLN := x;
End;
Các file đính kèm theo tài liệu này:
 Chương 1 cấu trúc dữ liệu và giải thuật.doc Chương 1 cấu trúc dữ liệu và giải thuật.doc
 cau truc DL va giai thuat.doc cau truc DL va giai thuat.doc
 caymoinhat.doc caymoinhat.doc
 chuoi.doc chuoi.doc
 chuong3.cay.doc chuong3.cay.doc
 chuongdanhsachmoinhat.doc chuongdanhsachmoinhat.doc
 danhsachbancuoi.doc danhsachbancuoi.doc
 Đồ án cấu trúc dữ liệu và giải thuật.doc Đồ án cấu trúc dữ liệu và giải thuật.doc
 hambam.doc hambam.doc
 sapxepmoinhat.doc sapxepmoinhat.doc
 sxep.doc sxep.doc
 thuchanh.rar thuchanh.rar
 TIMKIEIM1-12.doc TIMKIEIM1-12.doc
 timkiem3.doc timkiem3.doc
 timkiem-CTDL.doc timkiem-CTDL.doc
 timkiemmoinhat.doc timkiemmoinhat.doc





