Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 54 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
54
Dung lượng
0,93 MB
Nội dung
Cách đánh giá BÀI GIẢNG Thực hành: 30% CẤU TRÚC DỮ LIỆU Bài tập: 20% Lý thuyết: 50% ThS Nguyễn Thị Thúy Loan 6/8/2010 Tài liệu tham khảo Nguyễn Thị Thúy Loan NỘI DUNG CHƯƠNG TRÌNH Bài giảng: ThS Nguyễn Hà Giang Cấu trúc liệu & giải thuật, Dương Anh Đức, Trần Hạnh Nhi, NXB ĐHQG Tp.HCM, 2008 Cấu trúc liệu, Nguyễn Trung Trực, ĐHBK, 1992 Giải thuật & lập trình, Lê Minh Hồng, ĐHSPHN, 1999-2002 Cấu trúc liệu + giải thuật = chương trình, Nguyễn Quốc Cường – Hoàng Đức Hải, NXB Giáo dục Fundamentals of Data Structures, Ellis Horowitz, Sartaj Sahni 6/8/2010 Nguyễn Thị Thúy Loan Độ phức tạp thuật tốn Tìm kiếm xếp Danh sách liên kết Stack & Queue Cây 6/8/2010 Nguyễn Thị Thúy Loan NỘI DUNG Chương I ĐỘ PHỨC TẠP THUẬT TOÁN I ĐO THỜI GIAN II DỰA VÀO ĐỘ LỚN CỦA DỮ LIỆU III MỘT SỐ CÔNG THỨC THƯỜNG DÙNG IV CÁCH TÍNH ĐỘ PHỨC TẠP ThS Nguyễn Thị Thúy Loan 6/8/2010 Đo thời gian Nguyễn Thị Thúy Loan Dựa vào độ lớn liệu Gọi t(n) thời gian thực thuật tốn A (thơng thường chu kỳ CPU), t(n) loại: a O(1): độ phức tạp số VD: for (int i=1; i1): đa thức g O(2n), O(n!): mũ (áp dụng liệt kê tất Nguyễn Thị Thúy Loan 11 b b a 1 i a i 1 i 1 1 1 1 b a ( a b N ) n ( n 1) i 1 n n( n 1) (a 1)(a 1) i i a n i n2 n ( n 1) i i 1 tập tập gồm n phần tử) 6/8/2010 n i 1 6/8/2010 Nguyễn Thị Thúy Loan 12 Cách tính độ phức tạp Một số cơng thức thường dùng Ví dụ 1: Cho thuật tốn tính tổng sau: n i2 c i 1 long Tong (int n) n( n 1)(2n 1) { for (int i = ; i nút gốc Cây nhị phân Cây nhị phân tìm kiếm (BST– Binary Search Tree) 5 10 Nguyễn Thị Thúy Loan 20 188 Cấu trúc liệu Cây nhị phân tìm kiếm typedef struct Tree { Xây dựng BST Data info; o Tìm kiếm/ thêm Tree *left; o Xóa Ln trì tính chất Tree *right; o Giá trị nhỏ bên trái }; o Giá trị lớn bên phải 6/8/2010 Nguyễn Thị Thúy Loan 189 6/8/2010 Tìm kiếm Ví dụ Xuất phát từ gốc o Nếu gốc = NULL => khơng tìm thấy 10 o Nếu khóa x = khóa nút gốc => tìm thấy Tìm bên trái o Ngược lại => tìm bên phải Nguyễn Thị Thúy Loan 25 45 6/8/2010 45 30 Binary search trees 191 10 45 30 o Ngược lại khóa x < khóa nút gốc => 6/8/2010 190 Nguyễn Thị Thúy Loan 25 30 10 25 Nguyễn Thị Thúy Loan Non-binary search tree 192 Ví dụ tìm x= Duyệt x=9 10>9, left 5