... bệnh hiểm nghèo Hình thức kỷ luật Xóa tên khỏidanhsách lớp Xóa tên khỏidanhsách lớp Xóa tên khỏidanhsách lớp Xóa tên khỏidanhsách lớp Xóa tên khỏidanhsách lớp ... DANHSÁCH HỌC SINH, SINH VIÊN BỊ XÓA TÊN KHỎIDANHSÁCH (Kèm theo QĐ số 42 /QĐ - TĐHHN, ngày tháng năm 2012) STT Mã SV DC00101402...
... *Trường hợp 1: Nếu l rỗng kết thúc *Trường hợp 2: Nếu danhsách có phần tử xóa đầu Ngược lại: B1: pTruoc trỏ đứng trước trỏ cuối danhsách B2: Cho pTruoc trỏ tới NULL B3: Xóa trỏ cuối B4: Gán trỏ ... node p để xác định node cần xóa - Kết quả: DSLK đơn l sau xóa phần tử sau p - Giải thuật: *Trường hợp 1: Nếu p trỏ cuối kết thúc *Trường hợp 2: (p khác trỏ cuối) B1: pSau trỏ đứng sau p B2: Xóa ... - Đầu vào: DSLK đơn l, node p để xác định node cần xóa - Kết quả: DSLK đơn l sau xóa trước phần tử p - Giải thuật: *Trường hợp 1: Nếu p trỏ đầu kết thúc *Trường hợp 2: (p khác trỏ...
... đơn l - Kết quả: DSLK đơn l sau xóa phần tử đầu - Giải thuật: *Trường hợp 1: Nếu l rỗng kết thúc *Trường hợp 2: (l khác rỗng) B1: pXoa trỏ đầu danhsách B2: Cho trỏ đầu trỏ vào phần tử B3: Xóa pXoa ... DSLK đơn l, phần tử k cần thêm phần tử p - Kết quả: DSLK đơn l sau thêm k sau p - Giải thuật: *Trường hợp 1: Nếu p trỏ cuối danhsách Thêm k vào cuối danhsách l *Trường hợp 2: (p khác trỏ cuối) ... phần tử p cần thêm - Kết quả: DSLK đơn l sau thêm - Giải thuật: *Trường hợp 1: Nếu l rỗng Con trỏ đầu cuối danhsách = p *Trường hợp 2: (l khác rỗng) B1: Con trỏ cuối danhsách trỏ vào p B2: Gán...
... có: ví dụ giá trị x để so sánh) - Kết quả: Trả số lượng phần tử thỏa điều kiện danhsách - Giải thuật: B1: d=0 p trỏ vào đầu danhsách B2: Nếu p = NULL trả d Kết thúc B3: Nếu giá trị p thỏa điều ... tử danhsách có giá trị chẵn danhsách số nguyên): int KiemTraToanChan(LIST l) { NODE *p=l.pHead; while(p) { if(p->Key%2!=0) return 0; p=p->pNext; } return 1; } Cài đặt (Giả sử kiểm tra xem danh ... kế tiếp, quay lại B2 - Cài đặt (Giả sử kiểm tra xem danhsách có tồn phần tử có giá trị lẻ danhsách số nguyên): int KiemTraTonTaiLe(LIST l) { NODE *p=l.pHead; while(p) { if(p->Key%2!=0) return...
... pTruoc Kết thúc - Cài đặt: NODE *TimNodeTruocp(LIST l, NODE *p) { if(p==l.pHead) return NULL; NODE *pTruoc=l.pHead; while(pTruoc->pNext!=p) pTruoc=pTruoc->pNext; return pTruoc; } Duyệt 2.1 Xuất danh ... - Đầu vào: DSLK đơn l - Kết quả: In giá trị phần tử danhsách hình - Giải thuật: B1: p trỏ đầu danhsách B2: Nếu p = NULL kết thúc Ngược lại In giá trị p B3: p trỏ đến phần ... - Đầu vào: DSLK đơn l - Kết quả: In giá trị phần tử danhsách thỏa điều kiện hình - Giải thuật: B1: p trỏ vào đầu danhsách B2: Nếu p = NULL kết thúc B3: Nếu giá trị p thỏa điều...
... l, giá trị x - Kết quả: Trả trỏ tìm (hoặc NULL: Nếu x) - Giải thuật: B1: p trỏ vào đầu danhsách B2: Nếu p = NULL trả NULL Kết thúc Ngược lại sang B3 B3: Nếu giá trị p = x trả p Kết thúc B4: p ... l - Kết quả: Trả trỏ chứa giá trị chẵn tìm (hoặc NULL: Nếu chẵn) - Giải thuật: B1: p trỏ vào đầu danhsách B2: Nếu p = NULL trả NULL Kết thúc Ngược lại sang B3 B3: Nếu giá trị p chẵn trả p Kết ... Đầu vào: DSLK đơn l - Kết quả: Trả trỏ max tìm - Giải thuật: B1: pMax trỏ vào đầu danhsách p trỏ vào sau pMax B2: Nếu p = NULL trả pMax Kết thúc Trang GV: Trần Minh Thái Ngược...
... l Kết quả: DSLK đơn l sau xóa phần tử cuối Giải thuật: *Trường hợp 1: Nếu l rỗng kết thúc *Trường hợp 2: Nếu danhsách có phần tử xóa đầu Ngược lại: B1: pTruoc trỏ đứng trước trỏ cuối danhsách ... l Kết quả: Trả số lượng phần tử danhsách Giải thuật: B1: d=0 p trỏ vào đầu danhsách B2: Nếu p = NULL trả d Kết thúc B3: d=d+1 B4: p trỏ đến phần tử kế tiếp, quay lại B2 Cài đặt: int SoLuongNode(LIST ... node p để xác định node cần xóaKết quả: DSLK đơn l sau xóa trước phần tử p Giải thuật: *Trường hợp 1: Nếu p trỏ đầu kết thúc *Trường hợp 2: (p khác trỏ đầu) B1: pTruoc trỏ đứng trước p B2: Xóa...
... PHẦN: LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Mã đề tài: 02 Tên đề tài Xây dựng lớp LinkList để lưu trữ danhsáchliênkết đơn chứa liệu số nguyên Lớp LinkList có phương thức: khởi tạo, thêm, bớt phần tử, xếp,...
... Danhsáchliênkết đơn Danhsáchliênkết kép Danhsáchliênkết vòng Chương 6: Danhsáchliênkết Giới thiệu - Danhsáchliênkết 10 Danhsáchliênkết đơn: phần tử liênkết với phần ... toàn danhsách … Chương 6: Danhsáchliênkết DSLK đơn – Các thao tác sở 50 Xóanodedanhsách Xóanode đầu danhsách Xóanode sau node q danhsách Xóanode có khoá k Chương 6: Danhsách ... sau danh sách: A B X Z Y Danhsáchliênkết kép: phần tử liênkết với phần tử đứng trước sau danh sách: A Chương 6: Danhsáchliênkết B C D Giới thiệu - Danhsáchliênkết 11 Danhsách liên...
... ns: integer; Node ^next; End; Khai báo trỏ L Node * L; Ví dụ tạo danhsáchliênkết đơn số nguyên typedef struct Node { int infor; Node * next; }; Node *L; Ví dụ tạo danhsáchliênkết đơn sinh ... Next Dữ liệu L Trường liênkết Next Next DANHSÁCHLIÊNKẾT ĐƠN ĐỊNH NGHĨA NÚT KHAI BÁO CON TRỎ L TRỎ ĐẾN ĐẦU DANHSÁCH typedef struct Node{ Data infor; Node * next; }; Type Node = record ht:string[20]; ... Danhsáchliênkết đơn Lý sử dụng ds liênkết Thêm vào danhsáchliên tục(mảng) z a b c d e f g h count=9 count=8 insert(3, ‘z’) Xóa phần tử khỏi mảng a b c d e f g h...
... tiê n danh sá ch liê n kế t, Last trỏ đế n phầ n tử cuối danh sá ch liê n kế t struct Linked_List; { First NODEPTR; Last NODEPTR; }; II Các phép toán danhsáchliên kết: II.1 Tạo danh sách: a ... ngược lạ i trả NULL NODEPTR New _Node( ) { NODEPTR p; p = (NODEPTR)malloc(sizeof(struct node) ); return (p); } c Thê m o đầ u danh sá ch (Insert_First): thê m nút có nội dung x o đầ u danh sá ch liê ... TRUE nế u danh sá ch liê n kế t rỗng, ngược lạ i int Empty(NODEPTR First) { return(First == NULL ? TRUE : FALSE); } c Xóa phầ n tử đầ u danh sá ch (Delete_First): muốn xóa phầ n tử khỏidanh sá...
... băm nối kết Các phần tử chứa bảng băm có kích thước nhỏ: phần tử cần chứa trỏ đến ô sống Như vậy, với bảng băm nối kết, kích thước ghi tăng 100% phải chứa thêm trỏ liênkếtdanhsáchliênkết Tuy ... Việc duyệt danhsách để xác nhận có mặt phần tử hay không không hiệu phương pháp băm biết Đối với ô có Giáo trình Cấu trúc liệu Giải thuật 407 Chương 18 – Ứng dụng danhsáchliênkết bảng băm ... thân bảng băm nối kết có kích thước nhỏ mà chứa số ghi lớn gấp nhiều lần kích thước Với bảng băm Giáo trình Cấu trúc liệu Giải thuật 408 Chương 18 – Ứng dụng danhsáchliênkết bảng băm đòa mở,...
... tiê n danh sá ch liê n kế t, Last trỏ đế n phầ n tử cuối danh sá ch liê n kế t struct Linked_List; { First NODEPTR; Last NODEPTR; }; II Các phép toán danhsáchliên kết: II.1 Tạo danh sách: a ... ngược lạ i trả NULL NODEPTR New _Node( ) { NODEPTR p; p = (NODEPTR)malloc(sizeof(struct node) ); return (p); } c Thê m o đầ u danh sá ch (Insert_First): thê m nút có nội dung x o đầ u danh sá ch liê ... TRUE nế u danh sá ch liê n kế t rỗng, ngược lạ i int Empty(NODEPTR First) { return(First == NULL ? TRUE : FALSE); } c Xóa phầ n tử đầ u danh sá ch (Delete_First): muốn xóa phầ n tử khỏidanh sá...
... tế như: danhsáchliênkết động, cấu trúc cây, đồ thị, … Cấu trúc danhsáchliênkết III.7 III.2 Danhsáchliênkết (DSLK) III.2.1 Định nghĩa danhsách Cho kiểu liệu T Kiểu liệu danhsách TL ... tính - OL gồm tốn tử: tạo danh sách, duyệt danh sách, tìm đối tượng (thỏa tính chất đó) danh sách, chèn đối tượng vào danh sách, hủy đối tượng khỏidanh sách, xếp danhsách theo quan hệ thứ tự ... (Stack) Top (Stack, x) III.4.4 Danhsách đa liênkếtDanhsách đa liênkếtdanhsách mà nút nó, ngồi thành phần liệu (có thể có nhiều trường), gồm nhiều thành phần liênkết khác phục vụ cho mục đích...
... tiê n danh sá ch liê n kế t, Last trỏ đế n phầ n tử cuối danh sá ch liê n kế t struct Linked_List; { First NODEPTR; Last NODEPTR; }; II Các phép toán danhsáchliên kết: II.1 Tạo danh sách: a ... ngược lạ i trả NULL NODEPTR New _Node( ) { NODEPTR p; p = (NODEPTR)malloc(sizeof(struct node) ); return (p); } c Thê m o đầ u danh sá ch (Insert_First): thê m nút có nội dung x o đầ u danh sá ch liê ... TRUE nế u danh sá ch liê n kế t rỗng, ngược lạ i int Empty(NODEPTR First) { return(First == NULL ? TRUE : FALSE); } c Xóa phầ n tử đầ u danh sá ch (Delete_First): muốn xóa phầ n tử khỏidanh sá...