1. Trang chủ
  2. » Luận Văn - Báo Cáo

Bài Tập Lớn Môn Học Cấu Trúc Dữ Liệu Và Giải Thuật.pdf

31 0 0
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đ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 đề Bài 1 (Bài số 02 trong danh sách bài tập)
Tác giả Trân Tiên Dũng
Người hướng dẫn TS. Hoang Van Thong
Trường học Trường Đại Học Giao Thông Vận Tải
Chuyên ngành Cấu Trúc Dữ Liệu Và Giải Thuật
Thể loại Bài Tập Lớn
Năm xuất bản 2022
Thành phố Hà Nội
Định dạng
Số trang 31
Dung lượng 764,77 KB

Cấu trúc

  • 7/ Ham x6a mot nut khdi danh sach 1lién két void deleteNode (Node<T>* p) { (12)
  • 1.4. Phân tích thời gian chạy của từng phương thức có trong các lớp (17)
    • BÀI 2 BÀI 2 (BÀI SÓ 40 TRONG DANH SÁCH BÀI TẬP) 2.1. Đề bài (17)
      • 1. Cài đặt cấu trúc dữ liệu trừu tượng cây tìm kiếm nhị phân sử dụng danh sách liên kết (17)
        • 2.3. Cài đặt các lớp và hàm main bằng C++ (19)
  • BST() { root = nullptr; (25)
    • case 3 case 3 (29)
      • 2.4. Phân tích thời gian chạy của từng phương thức có trong các lớp ReadFromFile(string filename): Đọc danh sách sinh viên từ tệp tin và xây dựng cây BST (30)

Nội dung

Xác định yêu cầu, các lớp, thuộc tính, phương thức: -_ Xây dựng lớp danh sách liên kết đơn - _ Xây dựng lớp đa thức - _ Xây dụng hàm main - Ham toan tl nhập, xuất, cộng, trừ, nhân 2 đa

Ham x6a mot nut khdi danh sach 1lién két void deleteNode (Node<T>* p) {

if (!p) { return; if (p == head) { head = p->getNext ();

/⁄/ trẻ đến ptu trudc ptu p while (current && current-—>getNext() != p) { current = current->getNext(); if (current) { current-—>setNext (p->getNext ()); delete p;

/⁄/ Toán tử nhân hai đa thức Dathuc operator* (Dathuc other) {

The algorithm multiplies two polynomials represented as linked lists It iterates through both lists, multiplying the coefficients and adding the exponents of the terms The resulting coefficients and exponents are then added to the product linked list.

// Cộng các đa thức có cùng số bậc product.combineTerms (); return product; int main() { Dathuc pl, p2, sum, diff, product; cout pl; cout > p2; cout SetTuoi (temp->GetTuoi(});

// Cuéi cting, no tién hanh dé quy vao con phai dé xdoa node có gtri

// nhỏ nhất bên phải đi vì đã gán vào vị trí của node muốn xóa rồi

// cap nhật con phải của node hiện tai bang cây con phải Sau khi xóa node->SetRight (Delete (node->GetRight(), temp->GetMSV())); return node;

SinhVien* Update(SinhVien* node, int MSV, string HoTen, int Tuoi) {

Delete(node, MSV); return Insert (node, MSV, HoTen, Tuoi);

SinhVien* FindMin(SinhVien* node) { while (node->GetLeft() != nullptr) { node = node->GetLeft(); return node;

SinhVien* Search(SinhVien* node, int MSV) { if (node == nullptr || node->GetMSV() == MSV) { return node;

} else if (MSV < node->GetMSV(}) { return Search(node->GetLeft(), MSV);

} else { return Search(node->GetRight(), MSV); void InOrder(SinhVien* node) { if (mode != nullptr) {

InOrder (node->GetLeft())}; cout

Ngày đăng: 16/09/2024, 15:43

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

TÀI LIỆU LIÊN QUAN

w