... CNTT – BàiTập Thực Hành CTDL>
Trang 5/12
Module 4
Bài 1
Tổ chức và xây dựng 2 hàm : GiảiPT_bac1 và GiảiPT_bac2 với các tham số hợp lý.
Sử dụng 2 hàm này ñể giải pt bậc 2.
Bài 2 ... tất cả các bàitập trong các Module ở tuần tương ứng.
Những sinh viên chưa hòan tất phần bàitập tại lớp có trách nhiệm tự làm
tiếp tục ở nhà.
•
Các bài có dấu (*) là các bàitập nâng cao ... Thành phần dữliệu trong mỗi Node là giá trị kiểu integer.
• Thêm một node vào ñầu danh
sách
• Thêm một node vào cuối danh
sách
• Thêm nhiều node vào ñầu danh
sách
• Thêm nhiều node vào cuối...
... môn h cớ ệ ọ
10
Bài tập thực hành
Đề bài tập:
Bài tập cho hàng tuần (file)
Các bài trong tài liệu tham khảo
Tự sưu tầm
Giải bài tập:
Giờ thực hành
Tự giảibài tập
Gi i thi u môn ... (20%)
Thực hiện giảithuật bằng tay
Thiết kế cấutrúcdữliệu theo yêu cầu
Đánh giá độ phức tậpgiải thuật
Viết mã lệnh
Đồ án môn học (30%)
Trình bày giảithuật chi tiết bằng ... Báo cáo và mã lệnh, nộp thông qua lớp
trưởng.
Gi i thi u môn h cớ ệ ọ
2
Giới thiệu
Môn học giới thiệu
Các cấutrúcdữliệu cơ bản
Các giảithuật điển hình trên các cấutrúcdữliệu đó
Dùng...
... hai sai lầm trầm trọng:
hoặc là sai về giải thuật, hoặc là giảithuật không thể triển khai nổi trên một cấutrúcdữliệu
12 CấutrúcdữliệuvàGiải thuật
http://www.ebook.edu.vn TRUỜNG CAO ... kiếm thuật toán giải quyế
t
vấn đề.
Các tiêu chuẩn khi lựa chọn cấutrúcdữliệu
• Cấutrúcdữliệu trước hết phải biểu diễn được đầy đủ các thông tin nhập và xuất của bài
toán
• Cấutrúcdữ ...
Cấu trúcdữliệuvàGiảithuật 21
TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THÔNG TIN
thuật về mặt tốc độ. Nếu như thời gian thực hiện một giảithuật là T1(n) = n2 và thời gian thực
hiện của một giải thuật...
... Giáo trình Cấutrúcdữliệu 1, Trần Hạnh Nhi – Dương Anh
Đức, Trường ĐHKHTN – ĐHQG TP.HCM.
Phần mềm lập trình:
C-Free 4.0
Borland C++
…
3
Chương 1: Ôn tập Kỹ thuật lập trình
4
Ôn tập tốt ... xếp Chọn trực tiếp (Selection
Sort)?
30
A. 7
B. 8
C. 9
D. 10
Ôn tập tốt nghiệp
Danh sách liên kết
Định nghĩa cấutrúcdữliệu của danh sách liên kết đơn được mô tả
như sau:
typedef struct ... Hàng đợi (queue)
Ôn tập tốt nghiệp
Danh sách liên kết
Đoạn mã sau dùng để tạo danh sách liên kết đơn gồm 2 phần tử có giá trị 18 và32. Dòng
l
ệnh nào sau đây sẽ được bổ sung vào vị trí còn thiếu...
... là thuậtgiải tìm một lời giải cho bài toán 8 hoàng hậu. Tuy
nhiên, ta có thể mở rộng để có thể tìm mọi lời giải cho bài toán. Sơ đồ tổng quát
cho giảithuật back-tracking để tìm mọi lời giải ... chứa nội dung của nút và trờng
next là con trỏ chỉ đến nút kế tiếp trong danh sách.
* Lu ý:
- Cấutrúc danh sách liên kết là cấutrúc động, các nút đợc cấp phát hoặc
bị giải phóng khi chơng ...
CHƯƠNG IV
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ấutrúc động, việc cấp phát nút vàgiải
phóng nút trên danh sách xảy ra khi chơng trình đang chạy....
... nghĩa và các khái niệm
Cây nhị phân
Cây nhị phân tìm kiếm (BST)
Cây tổng quát
Các thuật ngữ
Bậc của nút và bậc của cây
Nút A: bậc 3, nút C bậc 1
Bậc của cây: 3
Nút gốc, Nút lá và nút ... dụng Liên kết
Cấu tạo của nút
Tạo lập bằng cách cấp phát bộ nhớ động
Mỗi nút gồm có các thông tin:
•
Dữ liệu (data)
•
2 liên kết pLeft, pRight liên kết đến nút con trái và
nút con phải
Cây ...
Thêm một phần tử
vào cây nhị phân tìm kiếm
Thêm vào phần tử có khóa x
44
18 88
13 37
59 108
15 23 40 55 71
Thêm X= 50
X > 44
X < 88
X < 59
50
X < 55
root
Các thuật ngữ
Tổ tiên...
... sách được lưu vào một
mảng (truy cập nhanh)
Với đồ thị không định hướng có n đỉnh và e
cạnh, thì cần n nút đầu và 2e nút ‘trong’ danh
sách
Với đồ thị định hướng có n đỉnh và e cạnh, thì ... chương
Trình bày những kiến thức căn bản về lý
thuyết đồ thị, cách biểu diễn, một số
thuật toán trên đồ thị
Đánh giá thuật toán
Một số ứng dụng của đồ thị
Biểu diễn đồ thị
bằng danh sách kề (tt)
0
1
3
2
20
10
1
5
4
0
1
2
3
1 ... rộng
Tại điểm v bất kỳ, duyệt đỉnh v, thu được tập
hợp W gồm các đỉnh w xuất phát từ v
Lặp lại thao tác trên đối với tất cả các đỉnh w
trong W, thu được tập hợp đỉnh Z
Lặp lại thao tác trên đối...
... (a[j]>a[j+1]){
tmp=a[j+1];
a[j+1]=a[j];
a[j]=tmp;
}
}
}
}
Q&A
Các phương pháp sắp xếp
Các thuật toán cơ bản
Thuật toán “Selection sort”
Thuật toán “Insertion sort”
Thuật toán “Buble sort”
Thuật toán “Heap sort”
Thuật toán “Quick sort”
Để tiện ... trong danh sách,
giải thuật đi tìm giá trị phù hợp cho vị trí đó.
Sắp xếp chèn (Insert sort)
Ví dụ
Dãy ban đầu 34 8 64 51 32 21 Moved
Sau i=1 8 34 64 51 32 21 1
Sau i=2 8 34 64 51 32 21 0
Sau i=3 ... 1
Sau i=2 8 34 64 51 32 21 0
Sau i=3 8 34 51 64 32 21 1
Sau i=4 8 32 34 51 64 21 3
Sau i=5 8 21 32 34 51 64 4
Sắp xếp nhanh (Quick sort)
Giải thuật
void QuickSort(int a[], int l,int r){
int...
... lại i i+1, quay lại bước 4
Giải bài toán bằng máy tính
Hai yếu tố tạo nên một chương trình máy
tính
Cấu trúcdữ liệu
Giải thuật
Cấu trúcdữliệu + Giảithuật = Chương trình
Một số ví ... mong muốn
Mỗi thuật toán có một dữliệu vào
(Input) và một dữliệu ra (Output);
Thiết kế giải thuật
Từ bài toán đến chương trình
Bài toán
thực tế
Thiết kế
Lập trình
Giải thuật
#include ...
Kiểu dữ liệu,
Kiểu dữliệu trừu tượng
Kiểu dữliệu (Data type)
Kiểu dữliệu trừu tượng (ADT - abstract
data type):
Một kiểu dữliệu trừu tượng là một mô hình
toán học cùng với một tập...
... niệm và cách
thiết kế giảithuật đệ qui, giảithuật đệ qui quay
lui.
Giới thiệu một số bài toán điển hình được giải
bằng giảithuật đệ qui.
Phân tích ưu và nhược điểm khi sử dụng giải
thuật ... số>);
}
}
}
Giải thuậtvà hàm đệ quy
Giải thuật đệ quy
Nếu bài toán T được thực hiện bằng lời giải của bài
toán T
’
có dạng giống T là lời giải đệ quy
Giải thuật tương ứng với lời giải như ... học Ngân hàng TP.HCM
Chương 2
Đệ quy vàgiảithuật đệ quy
Phương pháp quay lui
(back tracking)
Đặc trưng : là các bước hướng tới lời giải
cuối cùng của bài toán hoàn toàn được
làm thử.
Tại...
... TIÊU CỦA MÔN HỌC
- Hiểu được dữliệu là gì, giảithuật là gì, mối quan hệ mật thiết giữa cấutrúcdữliệuvà
giải thuật.
- Phân tích được đâu là dữ liệu, đâu là giải thuật, sự kết hợp chúng để ... kiểu dữliệu mới
Mục tiêu của việc nghiên cứu cấutrúcdữliệu chính là tìm những phương cách thích
hợp để tổ chức, liên kết dữ liệu, hình thành các kiểu dữliệu có cấutrúc từ những kiểu dữliệu ... stack và hằng số N cho biết kích thước tối đa của stack.
Tạo stack S và quản lý đỉnh stack bằng biến t:
Data S [N];
1
BÀI GIẢNG CẤUTRÚCDỮLIỆUVÀGIẢI
THUẬT
LỜI NÓI ĐẦU
Giáo trình Cấutrúcdữ liệu...
... Page 25
Bài báo cáo bàitập thực hành môn : CấuTrúcDữLiệu & Giải Thuật.
BÁO CÁO BÀITẬP THỰC HÀNH MÔN CẤUTRÚCDỮLIỆU & GIẢITHUẬT
Bài 1. Viết chương trình con bằng gaiir thuật đệ ... 06I Trường CĐ Công Nghệ Thông Tin- ĐH ĐN. Page 26
Bài báo cáo bàitập thực hành môn : CấuTrúcDữLiệu & Giải Thuật.
Bài 3. Tương tự bàitập 1, nhưng cài đặt bằng con trỏ.
struct Node
{
... Thông Tin- ĐH ĐN. Page 22
Bài báo cáo bàitập thực hành môn : CấuTrúcDữLiệu & Giải Thuật.
}
Bài 24. Viết chương trình con đảo ngược 1 Queue.
Bài 25. Dùng Stack và Queue để kiểm tra 1 chuỗi...
... Cấutrúcdữliệuvàgiảithuật
a. Mượn sách: liệt kê những cuốn sách chưa cho mượn, cho user chọn một
cuốn sách ⇒ rồi cập nhật lại trạng thái cho mượn của sách.
b. Trả sách: nhập vào mã ... cầu sau:
1. Cài đặt cấutrúcdữliệu Book theo mô tả như phần A
2. Cài đặt cấutrúc BookNode là phần tử của danh sách liên kết chứa danh mục sách.
Hình: Minh họa cấutrúc của phần tử trên ... chọn các thông tin của sách để
sửa và sau đó cập nhật lại.
8. Chức năng lưu file: nhập vào một tên file rồi lưu toàn bộ trạng thái hiện tại của
danh mục sách vào đó.
Yêu cầu:
Sinh viên phải...