... 10 = 40 Vídụ sau ứng dụng phép toán div, mod: Ví dụ: Nhập số tiền N đồng, đổi xem tờ đồng, tờ đồng, tờ đồng cho tổng số tờ Vídụ N=43 đ = tờ đ + tờ đ + tờ đ Cách tính sau: Ngôn ngữ lập trình Pascal ... thực tạo thành chươngtrìnhCácchươngtrình soạn thảo người lập trình lưu trữ đĩa dạng tập tin Ngôn ngữ Pascal xây dựng ký tự bản, gồm: o Các chữ la tinh: A, B, C, ,Z, a, b, c, , z o Các chữ số:0, ... { khai báo biến} Function { khai báo chươngtrình con} Procedure {hàm thủ tục } { Phần thân chươngtrình } Begin { Các lệnh } End a Phần tiêu đề chươngtrình Phần khóa Program, sau khoảng trắng...
... Q->Front=Q->Front->Next; free(Tempt); } else printf(”Loi : Hang rong”); } 32 16 CÁC ỨNG DỤNG CỦA NGĂN XẾP VÀ HÀNG ĐỢI • Bạn liệt kê số ứng dụng có sử dụng – Ngăn xếp – Hàng đợi 33 DANH SÁCH LIÊN KẾT KÉP • Mô hình ... Q->Elements[Q->Rear]=X; } else printf("Loi: Hang day!"); } 26 13 BÀI TẬP – Viết chươngtrình nhập vào ngăn xếp chứa số nguyên – Sau sử dụng hàng đợi để đảo ngược thứ tự phần tử ngăn xếp 27 CÀI ĐẶT HÀNG BẰNG ... cuối hàng(REAR), phép loại bỏ thực đầu danh sách, gọi đầu hàng(FRONT) • Cách làm việc theo dạng FIFO (First In First Out) CÁC PHÉP TOÁN Phép toán Diễn giải MAKENULL_QUEUE(Q) Tạo hàng đợi rỗng (Q)...
... III CÁC LOẠI DANH SÁCH KHÁC Danh sách liên kết kép (doubly linked list) pPre NULL pNext NULL pFirst ... (nodeDB* DL); void InsertDBList (int x, nodeDB* &DL); void DeleteDBList (int x, nodeDB* &DL); III CÁC LOẠI DANH SÁCH KHÁC Danh sách liên kết vòng (circular linked list) pNext pFirst struct node...
... XẾP ( STACK ) Các phép toán ngăn xếp Tạo ngăn xếp rỗng Hàm trả phần tử đỉnh ngăn xếp Nếu ngăn xếp rỗng hàm không xác định Chươngtrình xoá phần tử đỉnh ngăn xếp Chươngtrình thêm phần ... STACK ) Các phép toán ngăn xếp 2.2 Cài đặt mảng 42 # define size 200 struct stack { int n; e [size ]; int Top_idx; //giữ vị trí đỉnh ngăn xếp }; 13 14 38 22 19 I NGĂN XẾP ( STACK ) Các ... return -1; } } I NGĂN XẾP ( STACK ) Các phép toán ngăn xếp 2.2 Cài đặt mảng Xoá toàn stack Gọi Hàm khởi tạo dãy không cần phải xóa phần tử I NGĂN XẾP ( STACK ) Ứng dụng Giải toán tháp HN Có ba...
... Chỉ phát sinh trình thực chươngtrình không phát sinh lúc bắt đầu chươngtrình Khi chạy chương trình, kích thước biến, vùng nhớ địa vùng nhớ cấp phát cho biến thay đổi Sau sử dụng xong giải ... I KIỂU CON TRỎ Giới Thiệu Kiểu Dữ Liệu Con Trỏ Toán tử lấy địa (&) Vídụ : int a; int *p; p = &a; Toán tử tham chiếu (*) Vídụ : int a, b; int *p; a = 2; p = &a; b = *p; I KIỂU CON TRỎ Khai ... *pb; Vídụ 2: Khai báo biến f kiểu float biến pf trỏ float float f, *pf; I KIỂU CON TRỎ Khai báo biến Con Trỏ char *ted = “hello” h e l l ted [4] 5441 ted *(ted + 4) o \0 I KIỂU CON TRỎ Các thao...
... vào stack Cuối ta nhận 25 2= 625 Dưới chươngtrình đảo ngược xâu kí tự sử dụng stack Những vídụ khác, bạn đọc tìm thấy tài liệu [1], [2] Vídụ 3.1 Chươngtrình đảo ngược xâu kí tự #include ... ứng dụng việc giải toán Hệ điều hành chươngtrình dịch toán điều khiển trình, điều khiển nạp chươngtrình vào nhớ hay toán lập lịch Bạn đọc tham khảo thêm tài liệu [1], [2] Dưới đây, đưa ứng dụng ... thời gian thực trình (Time) số thực Cáctrình đợi hệ CPU đáp ứng thông qua hàng đợi gọi hàng đợi trình, hàng đợi trình với độ ưu tiên xây dựng cho điều kiện sau thoả mãn: - Cáctrình theo thứ...
... Freenode(q); } 4.3.4- Ứng dụng danh sách liên kết đơn 163 Vídụ viết chươngtrình quản lý sinh viên sau minh hoạ đầy đủ cho thao tác danh sách đơn Vídụ 4.6- Viết chươngtrình quản lý sinh viên ... điều hành chươngtrình dịch toán điều khiển trình, điều khiển nạp chươngtrình vào nhớ hay toán lập lịch Sau vídụ minh họa ứng dụng hàng đợi 145 Vídụ 4.4- Giải toán ”Người sản xuất nhà tiêu ... Ứng dụng stack Vídụ 4.1 Chươngtrình đảo ngược xâu kí tự: trình đảo ngược xâu kí tự giống việc đưa vào (push) kí tự xâu vào stack, sau đưa (pop) kí tự stack stack rỗng ta xâu đảo ngược Chương trình...
... tạp, tự nhiên chươngtrình khó đọc, khó bảo trì khó sử dụng nhớ cách có hiệu Dữ liệu tĩnh chiếm vùng nhớ dành cho chúng suốt trình hoạt động chươngtrình sử dụng nhớ hiệu Chương 6: Danh sách ... Cấu trúc liệu động Chương 6: Danh sách liên kết Giới thiệu - Cấu trúc liệu động Cấu trúc liệu động: Ví dụ: Danh sách liên kết, Cấp phát động lúc chạy chươngtrình Các phần tử nằm rải rác ... trú c No de }; Chương 6: Danh sách liên kết DSL đơn – K b o K h 15 Vídụ 1: Khai báo node lưu số nguyên: struct Node { int data; Node *pNext; }; Chương 6: Danh sách liên kết Vídụ 2: Khai báo...
... PROCEDURE INSERT(L,X); • Vídụ ta muốn thêm phần tử X = 10 vào cuối danh sách L Bước q=L New (P); P->infor = X; P->Next = NIL 10 14 THÊM MỘT PHẦN TỬ VÀO CUỐI DANH SÁCH • Vídụ ta muốn thêm phần tử ... KHAI BÁO CON TRỎ L TRỎ ĐẾN ĐẦU DANH SÁCH typedef struct Node{ Data infor; Node * next; }; Type Node = record ht:string[20]; ns: integer; Node ^next; End; Khai báo trỏ L Node * L; Vídụ tạo danh ... infor Next infor Next F: First L: Last … infor 10 L DSLKDON CON TRỎ Dạng tổng quát dùng trỏ L L infor Next L infor Next … infor 11 Các phép toán DSLK đơn TẠO DANH SÁCH RỖNG THÊM MỘT PHẦN TỬ...
... NODEPTR; Last NODEPTR; }; II Các phép toán danh sách liên kết: II.1 Tạo danh sách: a Khởi tạ o danh sá ch (Initialize): dùng để khởi động danh sá ch liê n kế t, cho chương trì nh hiể u hiệ n tạ ... phá t nút cho danh sá ch liê n kế t Hà m New_Node nà y trả địa nút vừa cấ p phá t Trong chương trì nh có sử dụng hà m malloc (trong ) , hà m nà y cấ p phá t khối nhớ tí nh theo byte từ ... (Delete_All): ta sử dụng lệ nh *First = NULL để xóa n danh sá ch, nhớ, cá c vùng nhớ đ cấ p phá t cho cá c nút không giả i phóng lạ i cho memory heap, nê n l ng phí vùng nhớ Do đó, ta sử dụng giả i thuậ...
... 18.4 Chươngtrình cho Game_Of_Life #include "utility.h" #include "life.h" int main() // Chươngtrình Game_Of_Life /* pre: Người sử dụng cho biết trạng thái ban đầu cấu hình post: Chươngtrình ... Các hàm phụ trợ Các hàm phụ trợ xem khuôn mẫu sửa đổi đôi chút để dùng cho ứng dụng khác void instructions() /* post: In hướng dẫn sử dụng chươngtrình Game_Of_Life */ { cout
... NODEPTR; Last NODEPTR; }; II Các phép toán danh sách liên kết: II.1 Tạo danh sách: a Khởi tạ o danh sá ch (Initialize): dùng để khởi động danh sá ch liê n kế t, cho chương trì nh hiể u hiệ n tạ ... phá t nút cho danh sá ch liê n kế t Hà m New_Node nà y trả địa nút vừa cấ p phá t Trong chương trì nh có sử dụng hà m malloc (trong ) , hà m nà y cấ p phá t khối nhớ tí nh theo byte từ ... (Delete_All): ta sử dụng lệ nh *First = NULL để xóa n danh sá ch, nhớ, cá c vùng nhớ đ cấ p phá t cho cá c nút không giả i phóng lạ i cho memory heap, nê n l ng phí vùng nhớ Do đó, ta sử dụng giả i thuậ...