... 35 33 29 29 29 29
19 29 35 33 32 32 32
Kỹ thuật lập trì nh
70
CHươNG 3 CáCTHUậTTOáN TRÊN CấUTRúCDữLIệU MảNG
I. Mảng không sắp xếp và thuậttoán tìm kiếm trên
mảng chưa có thứ tự
I.1. ... vao");
getch();
}
II. Cácthuậttoán sắp xếp
:
Trong thực tế cuộc sống cũng như trong lĩ nh vực lậ p trì nh, việ c quả n lỹ dữ liệ u
thường đòi hỏi sự tì m kiế m cá c dữ liệ u cầ n thiế t; ... chiề u M[1][2]
I.1.4. Đọc (nhập) dữ liệ u cho mảng:
- Để nhậ p dữ liệ u cho mả ng ta phả i nhậ p dữ liệ u cho từng thà nh phầ n của
mả ng.
Ví dụ 1
:
Kỹ thuật lập trì nh
84
lạ i hoten,...
... sách có cách biểu diễn theo cáccấutrúcdữliệu
và thao tác trên dữliệu khác nhau.
50
4.2. Danh sách liên kết đơn (tt)
4.2.2.i. Tách 1 danh sách thành nhiều danh sách
5
2. Các phép toán trên ... sách liên kết đơn (tt)
4.2.1. Cấutrúcdữliệu (tt)
Để quản lý danh sách liên kết có thể dùng nhiều phương pháp
khác nhau, mỗi phương pháp sẽ có cấutrúcdữliệu cụ thể.
Quản lý địa chỉ ... (tt)
4.2.2.e. Tìm kiếm phần tử trong danh sách
Giả sử cần tìm kiếm trong danh sách liên kết đơn phần tử có
phần dữliệu SearchData.
Dùng thuậttoán tìm tuyến tính.
Thuật toán
B1: CurrNode = SLList...
... bởi một trongcác cách mà ta đà xét
trong chơng 3. Tức là ta có thể cài đặt bởi danh sách kế cận (dùng mảng) hoặc
danh sách liên kết. Các phép toán đối với bảng đợc qui về các phép toán tìm ... ai đà nắm đợc những cấutrúcdữliệu phức tạp.
163
163
truy xuất thông tin từ bảng và sửa đổi thông tin trong bảng. Tuy nhiên trong
một số áp dụng ta phải cần đến các phép toán xen vào và loại ... danh sách các
phần tử của từ điển; Còn đối với bảng, với tập chỉ số A và tập giá trị B thì mỗi
rổ là một danh sách nào đó, các cặp (a, b) trong đó a A, b B. Chính xác
hơn, cấutrúcdữliệu bảng...
...
s->bf = imbal;
}
Kỹ thuật lập trì nh
105
CHươNG 6 cácthuậttoán trên cấutrúc câY
(Tree)
Câ y là một cấ u trúcdữ liệ u rấ t thông dụng và quan trọngtrong nhiề u phạ m
vi khá ...
Ví dụ
: Tổ chức cá c quan hệ họ hà ng trong một gia phả , mục lục của một
cuốn sá ch, xâ y dựng cấ u trúc về cú phá p trong cá c trì nh biê n dịch.
Trong chương trì nh nà y, chúng ta khả o ... field gọi là khóa của nút .
II.2. Các phép toán trê n cây nhị phân
:
- Khai báo
: Để tổ chức dữ liệ u theo câ y nhị phâ n, ta có thể dùng một nội
dung của dữ liệ u để là m khóa sắ p xế p và...
... = min;
}
}
Kỹ thuật lập trì nh
97
CHƯƠNG 5 CáCTHUậTTOáN TRÊN CấUTRúC
DANH SáCH LIÊN KếT (LINKED LIST)
I. Khái niệm:
Cấ u trúc danh sá ch liê n kế t là cấ u trúc động, việ c cấ ... kê dữ liệ u trong danh sá ch hay đế m số nút
trong danh sá ch
void Traverse(NODEPTR First)
{ NODEPTR p;
int stt = 0;
p = First;
if(p == NULL)
printf("\n (Khong co sinh vien trong ... dung của nút và trường
next là con trỏ chỉ đế n nút kế tiế p trong danh sá ch.
* Lưu ý
:
- Cấ u trúc danh sá ch liê n kế t là cấ u trúc động, cá c nút đ ược cấ p phá t hoặ c
bị giả i phóng khi...
... NULL ? TRUE : FALSE);
}
Kỹ thuật lập trì nh
105
CHươNG 6 cácthuậttoán trên cấutrúc câY
(Tree)
Câ y là một cấ u trúcdữ liệ u rấ t thông dụng và quan trọngtrong nhiề u phạ m
vi khá ...
Ví dụ
: Tổ chức cá c quan hệ họ hà ng trong một gia phả , mục lục của một
cuốn sá ch, xâ y dựng cấ u trúc về cú phá p trong cá c trì nh biê n dịch.
Trong chương trì nh nà y, chúng ta khả o ... tự các nút trong cây
:
Kỹ thuật lập trì nh
111
Ghi chú : Đối với câ y ta có thể tổ chức thứ tự theo khóa là một nội dung
của nút hoặ c ta đặ t thê m 1 field gọi là khóa của nút .
II.2. Các...
... tă ng dầ n.
Kỹ thuật lập trì nh
97
CHƯƠNG 5 CáCTHUậTTOáN TRÊN CấUTRúC
DANH SáCH LIÊN KếT (LINKED LIST)
I. Khái niệm:
Cấ u trúc danh sá ch liê n kế t là cấ u trúc động, việ c cấ ... kê dữ liệ u trong danh sá ch hay đế m số nút
trong danh sá ch
void Traverse(NODEPTR First)
{ NODEPTR p;
int stt = 0;
p = First;
if(p == NULL)
printf("\n (Khong co sinh vien trong ... dung của nút và trường
next là con trỏ chỉ đế n nút kế tiế p trong danh sá ch.
* Lưu ý
:
- Cấ u trúc danh sá ch liê n kế t là cấ u trúc động, cá c nút đ ược cấ p phá t hoặ c
bị giả i phóng khi...
... trị
bằ ng x trong danh sá ch, nế u không có thì trả về trị NULL.
NODEPTR Search(NODEPTR First, int x)
{
NODEPTR p;
Kỹ thuật lập trì nh
97
CHƯƠNG 5 CáCTHUậTTOáN TRÊN CấUTRúC
DANH SáCH ... kê dữ liệ u trong danh sá ch hay đế m số nút
trong danh sá ch
void Traverse(NODEPTR First)
{ NODEPTR p;
int stt = 0;
p = First;
if(p == NULL)
printf("\n (Khong co sinh vien trong ... 'DSSV.DAT' và o danh sá ch liê n kế t. Nế u trong danh
sá ch liê n kế t đ có nút thì xóa tấ t cả dữ liệ u hiệ n có trong danh sá ch liê n kế t
trước khi đ ưa dữ liệ u từ file và o.
2. Viế t chương...
... bước 4;
Cấu trúcdữliệu Stack và ứng dụng của stack trongcác
giải thuật đệ qui.
PHẦN 1: MỞ ĐẦU
I. LÍ DO CHỌN ĐỀ TÀI
Các kiểu cấutrúcdữliệu cơ bản như stack, queue… cùng với các giải thuật ... toán phức tạp được
giải quyết một cách dễ dàng.
Chính vì vậy mà trong chương trình học môn cấutrúcdữliệu và giải thuật
của các trường cao đẳng, đại học hay trường chuyên, kiểu cấutrúcdữ ... một cấutrúcdữ
liệu trừu tượng làm việc theo nguyên lý vào sau ra trước (last in first out).
Một ngăn xếp là một cấutrúcdữliệu dạng thùng chứa (container) của các
phần tử (thường gọi là các...
... khiển và các kiểu dữliệu có cấu trúc.
2.1 Những nội dung chủ yếu về cáccấutrúc điều khiển và các
kiểu dữliệu có cấutrúc .
Theo chơng trình tin học 11 THPT đà trình bày, cáccấutrúc điều ... nh đà xây dựng các
định hớng, các quy trình dạy học theo hớng phát triển t duy thuật giải cho học
sinh thông qua dạy học cáccấutrúc điều khiển và các kiểu dữliệu có cấutrúc
trong chơng trình ... Cấutrúc rẽ nhánh và cấutrúc lặp đợc trình bày rất chi tiết trong chơng III.
Còn các kiểu dữliệu có cấutrúc đợc đề cập ở chơng IV bao gồm: Kiểu mảng,
Kiểu xâu và Kiểu bản ghi.
ã Về cấu trúc...
... T:TJpegimage;
begin
SaveDialog1.DefaultExt:='*.JPG';
156
PHẦN PHỤ LỤC
Phụ lục 1
Unit chứa khai báo cáccấutrúcdữliệu cho đồ thị
và cài đặt thủ tục tìm đường đi ngắn nhất theo thuật toán
unit Func_DoThi;
interface
type
TypeToaDo=record
... (i<=(G.SoCanh-1)) do
If (G.DSCanh[i].DinhDau=DinhDau)and(G.DSCanh[i].DinhCuoi=DinhCuoi) then
begin
TrongSo:=G.DSCanh[i].TrongSo;
i:=G.SoCanh;
end
else i:=i+1;
end;
procedure TForm2.imduongdingannhat2Click(Sender: ... Setlength(G.DSCanh,G.SoCanh);
With G.DSCanh[G.SoCanh-1] do
begin
DinhDau:=D2;
DinhCuoi:=D1;
TrongSo.VoCung:=false;
TrongSo.Gia:=0;
end;
end;
HienThamSoCung(G);
VeDoThi(G,Pic,imagelist1);
DrawPaint(PaintBox1,Pic);
end;
155
...
... C/C+ậ
+
Ch n g 1 : ươ Ôn t p ậ
C/C++
Cấu trúcdữ liệu
(1) Sự tổ chức hợp lý của các thành phần dữ liệu,
(2) Tập các thao tác để truy cập các thành phần dữ liệu.
(1) the logical arrangement ... t p ậ
C/C++
Nội dung
Cấu trúcdữ liệu
Thuật toán
Độ phức tạp của thuậttoán (algorithm complexity)
18
Ch ng 1: ươ Ôn t p C/C+ậ
+
Ch n g 1 : ươ Ôn t p ậ
C/C++
2. Các cú pháp cơ bản
if ( ... hiện phép toán
Ví dụ:
7 + 3.5
39
Ch n g 1 : ươ Ôn t p ậ
C/C++
Ch ng 1: ươ Ôn t p C/C+ậ
+
Ch n g 1 : ươ Ôn t p ậ
C/C++
Nội dung
Cấu trúcdữ liệu
Thuật toán
Độ phức tạp của thuật toán
6
Ch...