• Bài giảng môn Cấu trúc dữ liệu chương 2: Kỹ thuật tìm kiếmBài giảng môn Cấu trúc dữ liệu chương 2: Kỹ thuật tìm kiếm

    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

    ppt29 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 2235 | Lượt tải: 1

  • Bài giảng môn Cấu trúc dữ liệu chương 3 : Kỹ thuật sắp xếpBài giảng môn Cấu trúc dữ liệu chương 3 : Kỹ thuật sắp xếp

    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

    ppt31 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 2768 | Lượt tải: 2

  • Bài giảng môn Cấu trúc dữ liệu chương : Kỹ thuật tìm kiếmBài giảng môn Cấu trúc dữ liệu chương : Kỹ thuật tìm kiếm

    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

    ppt29 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 2317 | Lượt tải: 0

  • Bài giảng môn Cấu trúc dữ liệu: Tổng quan về cấu trúc dữ liệu và giải thuậtBài giảng môn Cấu trúc dữ liệu: Tổng quan về cấu trúc dữ liệu và giải thuật

    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ú...

    ppt17 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 2406 | Lượt tải: 0

  • Giáo trình lý thuyết cấu trúc dữ liệuGiáo trình lý thuyết cấu trúc dữ liệu

    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ế...

    pdf229 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 2000 | Lượt tải: 3

  • Bài giảng chương 18: Ứng dụng danh sách liên kết và bảng bămBài giảng chương 18: Ứng dụng danh sách liên kết và bảng băm

    Đâ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...

    pdf16 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 2217 | Lượt tải: 1

  • Bài giảng chương 15: Ứng dụng của hàng đợiBài giảng chương 15: Ứng dụng của hàng đợi

    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...

    pdf10 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 2382 | Lượt tải: 1

  • Bài giảng chương 14: Ứng dụng của ngăn xếpBài giảng chương 14: Ứng dụng của ngăn xếp

    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...

    pdf12 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 2365 | Lượt tải: 1

  • Bài giảng chương 13: Đồ thịBài giảng chương 13: Đồ thị

    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 ...

    pdf26 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 1915 | Lượt tải: 1

  • Bài giảng chương 12; Bảng và truy xuất thông tinBài giảng chương 12; Bảng và truy xuất thông tin

    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.

    pdf34 trang | Chia sẻ: haohao89 | Ngày: 29/07/2013 | Lượt xem: 2085 | Lượt tải: 1