Đang chuẩn bị nút TẢI XUỐNG, xin hãy chờ
Tải xuống
Lấy nội dung một phần tử trong hàng đợi ra để xử lý (Get): Trong hàng đợi chúng ta luôn luôn lấy nội dung phần tử ở ngay đầu hàng đợi, tại vị trí Front (nếu hàng đợi không rỗng). | ỹiá ÙU Cấu Ttú Dũ Liệu vù ỹiùi 7huật if QList.Front -1 QList.Front 0 if QList.Rear QList.Len QList.Rear 0 else QList.Rear 1 QList.List QList.Rear NewData return QList.Rear c. Lấy nộỉ dung một phần tử trong hàng đợi ra để xử lý Get Trong hàng đợi chúng ta luon luon lấy nội dung phan tử ở ngay đầu hàng đợi tai vị trí Front nếu hãng đợi không rỗng . Gia sử ta can lay dữ liệu ra biến Data - Thuật toán Neu hang đợi bị rong B1 IF CQ_List.Front 0 Thực hiên Bkt B2 Data CQ_List.List CQ_List.Front B3 IF CQ_List.Rear CQ_List.Front Hang đợi chỉ co 1 phan tử B3.1 CQ_List.Rear CQ_List.Front 0 B3.2 Thực hiẹn Bkt B4 IF CQ_List. Front CQ_List.Len CQ_List.Front 1 B5 ELSE CQ_List.Front Bkt Ket thuc - Cái đật thuật toán Ham CQ_Get co prototype int CQ_Get C_QGEGE QList T Data Ham thực hien viec lẩy nọi dung phan tử đau hang đợi quản ly bợi QList va ghi nhận vao Data neu lay đựợc. Ham tra ve giá trị 1 neu viec lay thanh cóng ngựợc lại khi hang đợi bị rong ham tra ve gia trị -1. Noi dung cua ham nhự sau int CQ_Get C_QGEGE QList T Data if QList.Front -1 return -1 Data QList.List QList.Front if QList.Front QList.Rear QList.Front QList.Rear -1 return 1 if QList.Front QList.Len-1 QList.Front 0 else Trang 139 ỹiá ÙU Cấu Ttú Dũ Liệu vù ỹiùi 7huật QList.Front 1 return 1 d. Hủy hàng đợi Trong thao tác này chung ta thực hiện việc hủy bo nhớ đã cấp phát cho hàng đợi. Hàm CQ_Delete co nội dung nhự sau void CQ_Delete C_QUEUE QList delete QList.List return c. Các thao tác trên hang đợi to chức bằng danh liên kết đơn Khác với hàng đợi bieu diễn báng danh sách đác ợ đày hàng đợi chỉ bị đày khi hết bo nhớ và không bao giớ bị tràn. à. Khôi tào hàng đợi Initialize Tựớng tự nhự trong danh sách lien ket đớn trong thao tác này chung tà chỉ đớn giàn thực hiên viẹc gàn các con tro Front và Rear ve con tro NULL. Hàm SQ_Initiàlize co nọi dung nhự sau S_QUEUE SQ_Initiàlize S_QUEUE QList QList.Front QList.Rear NULL return QList b. Thêm Ị ửà mọt phần tử vào hàng đợi Add Ở đày chung ta them mot phàn tử vào sau Rear