Tổng hợp tất cả tài liệu, ebook, giáo trình Công Nghệ Thông Tin chọn lọc và hay nhất.
Tìm tuyến tính (tt)
Cài đặt thuật toán:
int LinearSearch (T M[], int N, T X)
{
int k = 0;
while (M[k] != X && k 29 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 2235 | Lượt tải: 1
2.1. a. Bubble Sort (tt) Phân tích thuật toán: Trong mọi trường hợp Số phép gán G = 0 Số phép so sánh S = (N-1) + (N-2) + + 1 = ½N(N-1) Trong trường hợp tốt nhất Số phép hoán vị các phần tử Hmin = 0 Trong trường hợp xấu nhất Số phép hoán vị các phần tử Hmax = (N-1) + (N-2) + + 1
31 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 2768 | Lượt tải: 2
Tìm tuyến tính (tt) Phân tích, đánh giá thuật toán: Trường hợp tốt nhất (phần tử đầu tiên của mảng có giá trị = X) Số phép gán Gmin = 1 Số phép so sánh Smin = 3 Trường hợp xấu nhất (không có phần tử nào của mảng có giá trị = X) Số phép gán Gmax = 1 Số phép so sánh Smax = 2N + 1 Trung bình Số phép gán Gavg = 1 Số phép so sánh Savg = N + 2
29 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 2317 | Lượt tải: 0
Máy tính chỉ có thể lưu trữ dữ liệu ở dạng nhị phân. Nếu muốn phản ánh được dữ liệu đa dạng, thì cần phải xây dựng những phép ánh xạ, những qui tắc tổ chức phức tạp che lên tầng dữ liệu nhị phân thô sơ. Nhằm đưa ra những khái niệm logic về hình thức lưu trữ khác nhau đựoc gọi là kiêu dữ liệu. Các kiểu dữ liệu cơ sở Các kiểu dữ liệu có cấu trú...
17 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 2406 | Lượt tải: 0
Có thể nói rằng không có một chương trình máy tính nào mà không có dữ liệu để xử lý. Dữ liệu có thể là dữ liệu đưa vào (input data), dữ liệu trung gian hoặc dữ liệu đưa ra (output data). Do vậy, việc tổ chức để lưu trữ dữ liệu phục vụ cho chương trình có ý nghĩa rất quan trọng trong toàn bộ hệ thống chương trình. Việc xây dựng cấu trúc dữ liệu quyế...
229 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 2000 | Lượt tải: 3
Đây là một ứng dụng có sử dụng CTDL danh sách và bảng băm. Thông qua ứng dụng này sinh viên có dịp nâng cao kỹ năng thiết kế hướng đối tượng, giải quyết bài toán từ ngoài vào trong. Ngoài ra, đây cũng là một ví dụ rất hay về việc sử dụng một CTDL đúng đắn không những đáp ứng được yêu cầu bài toán mà còn làm tăng hiệu quả của chương trình lên rất nh...
16 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 2217 | Lượt tải: 1
CTDL hàng đợi được sử dụng rất rộng rãi trong các chương trình máy tính. Đặc biệt là trong công việc của hệ điều hành khi cần xử lý các công việc một cách tuần tự. Hàng đợi trong chương 3 là một khái niệm FIFO đơn giản. Trong thực tế, người ta thường rất hay sử dụng các hàng đợi ưu tiên được trình bày trong chương 11. Chương này minh họa một số ứng...
10 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 2382 | Lượt tải: 1
Dựa trên tính chất của các giải thuật, các ứng dụng của ngăn xếp có thể được chia làm bốn nhóm như sau: đảo ngược dữ liệu, phân tích biên dịch dữ liệu, trì hoãn công việc và các giải thuật quay lui. Một điều đáng chú ý ở đây là khi xem xét các ứng dụng, chúng ta không bao giờ quan tâm đến cấu trúc chi tiết của ngăn xếp. Chúng ta luôn sử dụng ngăn x...
12 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 2365 | Lượt tải: 1
Một đồ thị (graph) G gồm một tập V chứa các đỉnhcủa đồ thị, và tập E chứa các cặp đỉnh khác nhau từ V. Các cặp đỉnh này được gọi là các cạnh của G. Nếu e= (?, µ) là một cạnh có hai đỉnh ? và µ, thì chúng ta gọi ? và µnằm trên e, và enối với ?và µ. Nếu các cặp đỉnh không có thứ tự, G được gọi là đồ thị vô hướng (undirected graph), ngược lại, G được ...
26 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 1915 | Lượt tải: 1
Trong chương 7 chúng ta đã thấy rằng, bằng cách so sánh khóa, trung bình việc tìm kiếm trong n phần tử không thể có ít hơn lg n lần so sánh. Nhưng kết quả này chỉ nói đến việc tìm kiếm bằng cách so sánh các khóa. Bằng một vài phương pháp khác, chúng ta có thể tổ chức các dữ liệu sao cho vị trí của một phần tử có thể được xác định nhanh hơn.
34 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 2085 | Lượt tải: 1