1. Trang chủ
  2. » Giáo án - Bài giảng

Thực hành cấu trúc dữ liệu và giải thuật

52 2 0

Đ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

Thông tin cơ bản

Tiêu đề Thực Hành Cấu Trúc Dữ Liệu Và Giải Thuật
Trường học Hutech University
Năm xuất bản 2021
Định dạng
Số trang 52
Dung lượng 1,2 MB

Nội dung

- void init Node* &phead int isEmptyNode* phead Node* createNodeint x void insertFirstNode* &phead, int x void insertLastNode* &phead, int x void showListNode* phead - Cách 1 void inputN

Trang 1

Biên

www.hutech.edu.vn

Trang 2

*1.2021.COS321*

tailieuhoctap@hutech.edu.vn

Trang 3

I III

1

1.1 TÓM LÝ 1

1.1.1 Hàm 1

4

5

1.2 HÀNH 6

6

8

10

1.3 HÀNH NÂNG CAO 12

15

2.1 TÓM LÝ 15

15

16

2.2 HÀNH 17

17

20

2.3 HÀNH NÂNG CAO 22

TRÚC QUEUE VÀ STACK 24

3.1 TÓM LÝ 24

24

3.1.2 Queue (h i) 24

3.2 HÀNH 25

25

27

RÚC CÂY 28

4.1 TÓM LÝ 28

28

4.1.2 Các thao tác 29

4.2 HÀNH 29

29

30

BÀI 5: 34

5.1 TÓM LÝ 34

34

Trang 4

5.1.2 Các thao tác 34

5.2 HÀNH 38

5.3 TRA HÀNH 45

TÀI THAM 46

Trang 5

H c xong môn này, sinh viên ph i n c các v sau:

Trang 6

u t i li n l p và g ch chân nh ng v không

Trang 7

Các câu l nh (bao

g m câu l nh g i hàm con ra th c hi n);

} Các hàm con

n

ng s Các hàm con

Hàm main() {

Các câu l nh (bao

g m câu l nh g i hàm con ra th c hi n); }

Trang 8

-

Tên hàm,

-

void Ten_Ham(danh sach

tham so neu co)

{

}

Trang 9

KieuDL Ten_Ham (danh sach

tham so neu co)

Trang 10

sau xong

1.1.2 M ng

M ng là m t t p h p các ph n t c nh có cùng m t ki u d li u, g i là ki u

ph n t Ki u ph n t có th là có các ki u b t k : ký t , s , chu i ký t

ta g i là m ng c a m ng hay m ng nhi u chi u) Ta có th chia m ng làm 2 lo i:

m ng m t chi u và m ng nhi u chi u

Cách khai báo m ng:

Cú pháp: <ki u d li u> <tên m ng> [<s ph n t >];

a bi n m ng

- [<S ph n t >]: là m t h ng s nguyên, cho bi t s ng ph n t t

Trang 13

int TimTuyenTinh(int a[], int n, int X){ }

void SapXep(int a[], int n){ }

int TimNhiPhan(int a[], int n, int X){ }

Trang 14

else

printf("Tim thay %d tai vi tri %d",X, vt);

sapxep(a,n);

printf("Mang sau khi sap tang dan:"); XuatMang(a,n);

printf("Nhap gia tri can tim: "); scanf("%d", &X);

Trang 15

void nhapn(int &n)

void nhapDS(Sach a[], int n)

void xuatDS(Sach a[], int n)

int timTuanTu(Sach a[], int n, int X)

int timNhiPhan(Sach a[], int n, int X)

Trang 16

int timTuanTu(Sach a[], int n, int X)

int timNhiPhan(Sach a[], int n, int X)

Trang 24

void init (Node* &phead)

int isEmpty(Node* phead) Node* createNode(int x)

void insertFirst(Node* &phead, int x) void insertLast(Node* &phead, int x) void showList(Node* phead)

printf("Nhap so luong phan tu: "); scanf("%d", &n);

for(int i=0; i<n; i++)

Trang 28

xuat1SV(SV x) void init (Node* &phead)

int isEmpty(Node* phead) Node* createNode(SV x)

void insertFirst(Node* &phead, SV x) void insertLast(Node* &phead, SV x) void showList(Node* phead)

-

void inputList(Node* &phead)

{

int n;

printf("Nhap so luong sinh vien:"); scanf("%d", &n);

for(int i=0; i<n; i++)

Trang 30

(Last In First Out)

Hai thao tác chính trên Stack:

Trang 35

struct node * left;

struct node * right;

} Node;

Trang 36

CreateTree(proot ->left, a, begin, i-1);

CreateTree(proot ->right, a, i+1, end);

Trang 37

if (proot->info <x)

return Remove(proot->right, x);

->info==x) Node* p, f, rp;

while ( rp->left != NULL) {

rp = rp->left; //rp qua bên trái

nút con trái là null p->info = rp-

Trang 38

if (proot->info <x)

return Remove(proot->right, x);

->info==x) Node* p, f, rp;

while ( rp->left != NULL) {

rp = rp->left; //rp qua bên trái

nút con trái là null p->info = rp-

Trang 39

e t lá, n a cây

g

h T nh

Trang 43

-

Trang 44

struct node *left;

struct node *right;

Trang 46

p->height = 1 + max(getHeight(p->right), getHeight(p->left));

pivot->height = 1 + max(getHeight(pivot->right), getHeight(pivot->left));

Trang 47

return NULL;

node *pivot = p->left;

p->left = pivot->right;

pivot->right = p;

p->height = 1 + max(getHeight(p->right), getHeight(p->left));

pivot->height = 1 + max(getHeight(pivot->right), getHeight(pivot->left));

Trang 48

p->height = 1 + max(getHeight(p->left), getHeight(p->right));

return balance(p); // balance the tree

Trang 50

node *temp = minValueNode(root->right);

node *root = NULL;

for (int i = 0; i < n; i++)

root = insert(root, a[i]);

return root;

}

-

Trang 51

Bài 2:

5.3 KI M TRA TH C HÀNH

Trang 52

1

2

TPHCM

3 Lê Minh Hoàng (1999 -

4 Richard Neapolitan and Kumarss (2004) Foundations of Algorithms Using C++ Pseudocode Jones and Bartlett Publishers

5

6

7 ThS V

Ngày đăng: 06/02/2024, 09:58

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN