1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 6 - Trường ĐH Văn Lang

39 9 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 6 cung cấp cho người học những kiến thức như: Khái niệm cấu trúc dữ liệu; tính đóng gói của cấu trúc dữ liệu; lợi ích của cấu trúc dữ liệu. Mời các bạn cùng tham khảo!

Khái niệm • Kiểu liệu ( data-type) kiểu lưu trữ liệu mà ngơn ngữ máy tính cho phép chẳng hạn số nguyên (int), dấu phẩy động (float, double), ký tự (char), v.v • Cấu trúc liệu ( data structure) kiểu liệu xây dựng lập trình viên để trừu tượng hóa phức tạp liệu ( thuộc tính) hoạt động KHOA CƠNG NGHỆ THƠNG TIN Cấu trúc liệu • Cấu trúc liệu mơ hình tốn học đặc trưng thuộc tính sau: • Cấu trúc liệu xác định số liệu tập hợp hoạt động, thao tác liệu • Các thao tác sử dụng với giao diện trực quan - hoạt động truy cập thơng qua giao diện • Có thể xây dựng tiên đề thức, điều kiện trước / sau vào kiểu liệu hoạt động liên quan KHOA CÔNG NGHỆ THÔNG TIN Cấu trúc liệu • Cấu trúc liệu phải độc lập với ngơn ngữ lập trình: • Tuy nhiên số loại cấu trúc liệu lại dễ triển khai số ngôn ngữ ngôn ngữ khác • Cấu trúc liệu nên triển khai độc lập với lĩnh vực ứng dụng: • nhiên số cấu trúc liệu khơng phù hợp với số loại miền ứng dụng KHOA CÔNG NGHỆ THÔNG TIN Cấu trúc liệu • Vì vậy,… để xây dựng đầy đủ cấu trúc liệu phải đưa điều sau: • Mơ tả yếu tố, trạng thái, liệu tạo nên cấu trúc liệu mô tả mối quan hệ phần tử riêng lẻ • Mơ tả tất hoạt động thực liệu cấu trúc liệu KHOA CÔNG NGHỆ THÔNG TIN Tính đóng gói cấu trúc liệu • Đóng gói nguyên tắc ẩn cách liệu cấu trúc cung cấp truy cập vào liệu theo cách xác định rõ ràng giao diện • Ví dụ tốn học cách sử dụng vectơ Để đơn giản, chúng tơi sẽ: • xem xét vectơ mặt phẳng • cung cấp cấu trúc liệu để biểu diễn vectơ • cung cấp thao tác thêm vectơ KHOA CÔNG NGHỆ THÔNG TIN Lợi ích cấu trúc liệu • cung cấp quyền truy cập vào loại đặc biệt cung cấp dịch vụ chuyên biệt: • dễ dàng sử dụng dịch vụ cách đóng gói phức tạp cách ẩn liệu hoạt động đằng sau mặt tiền nhiều giao diện • thúc đẩy tái sử dụng giảm thời gian phát triển - dễ dàng sử dụng lại dịch vụ phức tạp • thúc đẩy tập trung cải tiến giải thuật chương trình (đặc biệt hoạt động phức tạp) - thuộc tính khác lấy từ thơng số kỹ thuật thức xây dựng vào cấu trúc liệu KHOA CƠNG NGHỆ THƠNG TIN Lợi ích cấu trúc liệu • Cải thiện khả tái sử dụng mã • Giấu phức tạp thực hoạt động phức tạp đơn giản cho lập trình viên • thực triển khai thực tế đơn giản, dễ hiểu KHOA CÔNG NGHỆ THÔNG TIN Tiếp theo tìm hiểu: • Mảng đóng vai trị danh sách • Các cách hoạt động arraylist KHOA CÔNG NGHỆ THƠNG TIN Danh sách • Thơng thường lưu trữ thông tin danh sách: danh sách lớp lưu thơng tin sinh viên… • Danh sách cấu trúc liệu sử dụng để thiết kế thực cấu trúc liệu phức tạp KHOA CÔNG NGHỆ THÔNG TIN 10 Triển khai danh sách mảng • Thao tác chèn danh sách mảng phụ thuộc vào kích thước danh sách: • vi trí phải dịch chuyển • có khả mảng phải thay đổi kích thước • phần chèn gần đầu danh sách nhiều thời gian phần chèn gần cuối • Thao tác xóa phụ thuộc vào kích thước danh sách: • sau xóa phần tử, phần tử phải chuyển xuống • lần xóa gần đầu danh sách nhiều thời gian xóa gần cuối KHOA CÔNG NGHỆ THÔNG TIN 25 ArrayList-danh sách mảng KHOA CÔNG NGHỆ THÔNG TIN 26 Hàm khởi tạo - khởi tạo giá trị ban đầu cho thuộc tính KHOA CƠNG NGHỆ THƠNG TIN 27 ArrayList-danh sách mảng KHOA CÔNG NGHỆ THÔNG TIN 28 ArrayList-Append KHOA CÔNG NGHỆ THÔNG TIN 29 ArrayList-Swap KHOA CÔNG NGHỆ THÔNG TIN 30 ArrayList-danh sách mảng KHOA CÔNG NGHỆ THÔNG TIN 31 ArrayList- Insert KHOA CÔNG NGHỆ THÔNG TIN 32 ArrayList- Delete( index) KHOA CÔNG NGHỆ THÔNG TIN 33 ArrayList- Delete( value) KHOA CƠNG NGHỆ THƠNG TIN 34 Chỉ mục mảng • Các ngơn ngữ hỗ trợ mảng có lập mục chế cho phép lập trình viên dễ dàng truy cập phần tử mảng • Đơi hữu ích phát triển chiến lược lập mục thay KHOA CÔNG NGHỆ THÔNG TIN 35 Định địa mảng gián tiếp • Giải gián tiếp liên quan đến việc sử dụng danh sách mảng để trì danh sách số vào mảng liệu khác • Cho phép sử dụng để trì chuyển tải danh sách khác thứ tự mục tự nhiên mà không cần xếp lại danh sách liệu KHOA CÔNG NGHỆ THÔNG TIN 36 Ẩn… Rõ ràng nhiều thao tác số hoạt động phức tạp • Cấu trúc liệu cho phép "che giấu mớ hỗn độn" khuyến khích • tính đắn - làm lần, dùng nhiều lần • khả dự đốn - hành vi biết đến • suất - thời gian dành cho việc tái phát minh KHOA CÔNG NGHỆ THÔNG TIN 37 Xây dựng cấu trúc ArrayList lưu trữ số nguyên, có thao tác sau Append Element: đưa phần tử vào danh sách Insert Element: chèn phần tử vào danh sách Remove Element: xóa phần tử, giá trị khỏi danh sách Get Element: lấy giá trị vị trí Find Element: tìm kiếm phần tử, trả vị trí giá trị Swap Elements: đảo giá trị hai phần tử Clear List: xóa danh sách Nộp lên trang elearning, deadline, format … KHOA CÔNG NGHỆ THÔNG TIN 38 ... tạp liệu ( thuộc tính) hoạt động KHOA CƠNG NGHỆ THƠNG TIN Cấu trúc liệu • Cấu trúc liệu mơ hình tốn học đặc trưng thuộc tính sau: • Cấu trúc liệu xác định số liệu tập hợp hoạt động, thao tác liệu. .. • Mơ tả tất hoạt động thực liệu cấu trúc liệu KHOA CƠNG NGHỆ THƠNG TIN Tính đóng gói cấu trúc liệu • Đóng gói nguyên tắc ẩn cách liệu cấu trúc cung cấp truy cập vào liệu theo cách xác định rõ... ứng dụng KHOA CƠNG NGHỆ THƠNG TIN Cấu trúc liệu • Vì vậy,… để xây dựng đầy đủ cấu trúc liệu phải đưa điều sau: • Mô tả yếu tố, trạng thái, liệu tạo nên cấu trúc liệu mô tả mối quan hệ phần tử riêng

Ngày đăng: 27/01/2023, 08:44

Xem thêm:

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN