Một số câu hỏi

A. DANH SÁCH Trong DSĐ, tạo danh sách rỗng --> L->Last=0 Trong DSĐ, giá trị của --> EndList(L)=L.Last+1 Xóa ptử trong DSĐ --> [Q-1]=[Q] Hàm FirstList(L) trong DSĐ --> Luôn trả về 1 _____ Định nghĩa DSLK --> Tập hợp các ptử mà giữa chúng có sự nối kết với nhau... Trong DSLK, Delete/Retrieve trả về --> P->Next->Element …

[Hàm] Cây tổng quát

#include <conio.h> #include <stdio.h> #include <stdlib.h> #define MaxLength 30 #define NIL - 1 typedef char DataType; typedef int Node; typedef struct{         Node Parent[MaxLength];         int MaxNode;         DataType Label[MaxLength];         }Tree; //Tao cay rong void MakeNull_Tree(Tree *T){      T->MaxNode=0;     …

[Hàm] Cây nhị phân

#include <conio.h> #include <stdio.h> #include <alloc.h> #include <malloc.h> //Khai bao cay nhi phan typedef char TData; typedef struct TNode{     TData Data;     TNode* left;     TNode* right; }; typedef TNode* TTree; //Tao cay rong void MakeNull_Tree(TTree *T) {     (*T) = NULL; } //Kiem tra cay rong bool EmptyTree(TTree T) …

[Library] Hàng đợi (A_QUEUE)

#include <stdio.h> #include <conio.h> #define MaxLength 10 typedef int ElementType; typedef struct{ ElementType Element[MaxLength]; int Front, Rear; }Queue; //Tao hang rong void MakeNull_Queue(Queue *Q){ Q->Front=-1; Q->Rear=-1; } //Kiem tra hang rong int Empty_Queue(Queue Q){ return Q.Front==-1; } //Kiem tra hang day int Full_Queue(Queue Q){ return (Q.Rear-Q.Front+1)==MaxLength; } //Them phan tu vao hang void EnQueue(ElementType X, …

[Bài tập] Danh sách

//Tách danh sách thành 2 danh sách chẵn và lẻ void Split_List( List L1, List *L2, List *L3){ Position P=FirstList(L1); MakeNull_List(L2); MakeNull_List(L3); while (P!=EndList(L1)){ if (Retrieve(P,L1)%2==0) Insert_List(Retrieve(P,L1),EndList(*L2),L2); else Insert_List(Retrieve(P,L1),EndList(*L3),L3); P=Next(P,L1); } } int main (){ ElementType X; Position P; List L, Chan, Le; MakeNull_List(&L); Read_List(&L); printf("\n\nDanh sach vua nhap la : "); Print_List(L); Split_List(L, &Chan, …

[Bài tập] Ngăn xếp (CB)

Chuyến đổi số nhị phân #include <D:\L_STKLIB.CPP> main(){ int n, m; Stack S; printf("\nNhap vao so can chuyen doi : "); scanf("%d",&n); m=n; if (n==0) printf("\nSo nhi phan la 0"); else { MakeNull_Stack(&S); while (m!=0){ Push(m%2,&S); m=m/2; } while (!Empty_Stack(S)){ printf("\n%1d",Top(S); Pop(&S); } } getch(); } Kiểm tra chuỗi dấu ngoặc đúng hay không #include …

[Library] Ngăn xếp (L_STKLIB)

File #include <stdio.h> #include <conio.h> #include <D:\Student\Curriculum\1 Cau truc du lieu\Thuc hanh\ALISTLIB.CPP> //Khai bao danh sach cai dat bang ngan xep typedef List Stack; //Tao ngan xep rong void MakeNull_Stack(Stack *S){ MakeNull_List(S); } // Ham kiem tra ngan xep rong int Empty_Stack(Stack S){ return Empty_List(S); } //Ham kiem tra ngan xep day int Full_Stack(Stack S){ …

[Library] Danh sách (ALISTLIB)

File //Sap xep day tang dan void swap(Position a, Position b, List *L){      ElementType temp;      temp=L->Elements[a-1];      L->Elements[a-1]=L->Elements[b-1];      L->Elements[b-1]=temp; } void Sort_List(List *L){      Position P=FirstList(*L);      while (P!=EndList(*L)){            Position Q=Next(P,*L);            while (Q!=EndList(*L)){       …