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 8 - Trường ĐH Văn Lang

38 12 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 8 cung cấp cho người học những kiến thức như: Ngăn xếp; hàng đợi; bài tập stack và queue. Mời các bạn cùng tham khảo!

KHOA CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ THÔNG TIN Cơ chế: Last In First Out LIFO Stack KHOA CÔNG NGHỆ THÔNG TIN Mảng chiều Kích thước stack thiếu, lúc thừa Push / Pop phức tạp KHOA CÔNG NGHỆ THÔNG TIN Danh sách liên kết đơn Cấp phát động! Push/Pop dễ dàng • Để khai báo stack, ta cần mảng chiều S, biến nguyên t cho biết số đầu stack số N cho biết kích thước tối đa struct Stack{ Data D [N]; int count; } KHOA CÔNG NGHỆ THÔNG TIN • Lệnh count = tạo stack S rỗng • Giá trị count cho biết số phần tử hành có stack • Khi cài đặt mảng chiều, stack có kích thước tối đa nên cần xây dựng thêm thao tác phụ cho stack: • IsFull(): Kiểm tra xem stack có đầy chưa • Khi stack đầy, việc gọi đến hàm push() phát sinh lỗi.(overflow error) KHOA CÔNG NGHỆ THÔNG TIN class StackByArray { int[] iData; // lưu liệu stack int icount; // số phần tử stack lưu trữ public StackByArray(int size) { iData = new int[size]; icount = 0; } } KHOA CÔNG NGHỆ THÔNG TIN Thêm phần tử x vào stack S void Push(Stack S,Data x) { if(S.count < N) // stack chưa đầy { S.D[count] = x; S.count++; } else puts("Stack đầy"); } KHOA CÔNG NGHỆ THÔNG TIN 10 Hiện thực Stack tác vụ Stack danh sách liên kết Viết chương trình đổi số thập phân sang số vận dụng Stack Viết chương trình cài đặt tốn chuyển biểu thức trung tố sang hậu tố, sau tính giá trị biểu thức hậu tố KHOA CƠNG NGHỆ THƠNG TIN 24 KHOA CƠNG NGHỆ THƠNG TIN 25 • Hàng đợi vật chứa (container) đối tượng làm việc theo chế FIFO (First In First Out)  việc thêm đối tượng vào hàng đợi lấy đối tượng khỏi hàng đợi thực theo chế “Vào trước trước” • Các đối tượng thêm vào hàng đợi lúc có đối tượng thêm vào phép lấy khỏi hàng đợi 26 KHOA CƠNG NGHỆ THƠNG TIN 26 • Thêm vào cuối lấy đầu • FIFO 27 KHOA CƠNG NGHỆ THƠNG TIN 27 • Thêm vào cuối lấy đầu • FIFO 28 KHOA CƠNG NGHỆ THƠNG TIN 28 • Dùng DSLK đơn pHead A1 KHOA CÔNG NGHỆ THÔNG TIN pTail A2 An NULL 29 Class Node { public Data info; public Node next; } Class Queue { Node pHead; Node pTail; } KHOA CÔNG NGHỆ THƠNG TIN • Queue dùng DSLK • Con trỏ pHead trỏ đầu danh sách • Con trỏ pTail trỏ đến cuối danh sách • Thao tác Remove diễn pHead • Tháo tác Insert diễn pTail • Thao tác thêm xoá dễ dàng hai đầu 30 • -Cấu trúc hàng đợi-queue, có chức sau  EnQueue: Thêm phần tử vào cuối(rear) hàng đợi-queue  DeQueue: Xóa phần tử khỏi đầu(front) hàng đợi-queue Nếu hàng đợi-queue rỗng thơng báo lỗi  IsEmpty: Kiểm tra hàng đợi-queue rỗng  Front: Lấy giá trị phần tử đầu(front) hàng đợiqueue Lấy giá trị khơng làm thay đổi hàng đợi-queue KHOA CƠNG NGHỆ THÔNG TIN 31 pHead pTail p pHead pTail new X Public void EnQueue(Data x) {…} KHOA CƠNG NGHỆ THƠNG TIN 32 • TH: Hàng đợi có phần tử pTail pHead p KHOA CƠNG NGHỆ THƠNG TIN 33 • TH: Hàng đợi có nhiều phần tử pHead pTail pHead pTail p KHOA CÔNG NGHỆ THÔNG TIN 34 • Hàng đợi cấu trúc liệu dùng phổ biến thiết kế giải thuật Bất kỳ cần quản lý liệu, trình,… theo kiểu vào trước trước • Hệ thống print server • Cơ chế thơng điệp, đệm, hàng đợi xử lý kiện… • Các ứng dụng đặt vé tàu lửa, máy bay… • Các hệ thống rút tiền… KHOA CÔNG NGHỆ THÔNG TIN 35 Hiện thực hàng đợi tác vụ hàng đợi danh sách liên kết Viết chương trình quản lý kho hàng dùng hàng đợi thực danh sách liên kết KHOA CÔNG NGHỆ THÔNG TIN 36 Hiện thực cấu trúc StackByArray lưu số nguyên, có thao tác: • Push(int value) • Pop() • IsEmpty() • Top() Hiện thực QueueByLinkedList lưu số nguyên, có thao tác: • Void Enqueue(int value) • Int Dequeue() • Int Count() • Int Top() KHOA CƠNG NGHỆ THƠNG TIN 37 ... dàng hai đầu 30 • -Cấu trúc hàng đợi-queue, có chức sau  EnQueue: Thêm phần tử vào cuối(rear) hàng đợi-queue  DeQueue: Xóa phần tử khỏi đầu(front) hàng đợi-queue Nếu hàng đợi-queue rỗng thơng... pHead pTail p KHOA CƠNG NGHỆ THƠNG TIN 34 • Hàng đợi cấu trúc liệu dùng phổ biến thiết kế giải thuật Bất kỳ cần quản lý liệu, trình,… theo kiểu vào trước trước • Hệ thống print server • Cơ chế thông... 26 KHOA CƠNG NGHỆ THƠNG TIN 26 • Thêm vào cuối lấy đầu • FIFO 27 KHOA CƠNG NGHỆ THƠNG TIN 27 • Thêm vào cuối lấy đầu • FIFO 28 KHOA CƠNG NGHỆ THƠNG TIN 28 • Dùng DSLK đơn pHead A1 KHOA CƠNG NGHỆ

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

Xem thêm:

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

TÀI LIỆU LIÊN QUAN