1. Bài tập thực hành BUỔI 1

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

Thực hành Cấu trúc dữ liệu & Giải thuật GVHD: Đặng Văn Em

THỰC HÀNH CTDL&GT BUỔI SỐ 1


MỤC TIÊU
1) Giới thiệu tổng quan về Cấu trúc dữ liệu và giải thuật.
2) Ôn tập về kiến thức cấu trúc mảng, kiểu dữ liệu có cấu trúc.
3) Viết chương trình cài đặt minh họa các chiến lược thiết kế giải thuật.
NỘI DUNG LÝ THUYẾT
1) Giới thiệu tổng quan về Cấu trúc dữ liệu và giải thuật.
2) Ôn tập về kiến thức cấu trúc mảng, kiểu dữ liệu có cấu trúc.
3) Viết chương trình cài đặt minh họa các chiến lược thiết kế giải thuật.
a. MẢNG 1 CHIỀU:
<kiểu cơ sở> <tên biến mảng>[<số phần tử>];
Ví dụ: int Mang1Chieu[7];

b. MẢNG 2 CHIỀU:
<kiểu cơ sở> <tên mảng>[<số phần tử chiều 1>][<số phần tử chiều 2>];
Ví dụ: int Mang2Chieu[3][4];

Trang 1
Thực hành Cấu trúc dữ liệu & Giải thuật GVHD: Đặng Văn Em
c. KIỂU DỮ LIỆU CẤU TRÚC (STRUCT)
struct <tên kiểu cấu trúc>
{
<kiểu dữ liệu> <tên thành phần 1>;
…….
…….
<kiểu dữ liệu> <tên thành phần n>;
};
struct <tên kiểu cấu trúc> <tên biến>;

d. CÁC CHIẾN LƯỢC THIẾT KẾ GIẢI THUẬT:

BÀI TẬP THỰC HÀNH


Bài 1: Giả sử sử dụng hàm Random trong C/C++ để phát sinh ngẫu nhiên dãy 10.000 số nguyên
và lưu trong file Data.txt. Thực hiện các thao tác.
a) Xuất mảng 1 chiều nói trên ra màn hình.
b) Xoá 1 phần tử có giá trị X trong mảng.
c) Chèn một phần tử X vào vị trí cho trước trong dãy hiện hành.
d) Liệt kê những phần tử mang giá trị lớn nhất trong mảng.
e) Liệt kê những phần tử mang giá trị nhỏ nhất trong mảng.
f) Đếm số phần tử có giá trị âm/dương trong mảng.
g) Cho biết giá trị âm/dương lớn nhất trong mảng.
h) Tìm một phần tử có khoá bằng X có hay không trong mảng.
i) Đếm số phần tử có giá trị bằng X trong mảng. Nếu không có thì thông báo không có.
Bài 2: Viết hàm nhập/xuất ma trận các số nguyên vào tập tin data.txt. Thực hiện thao tác trên
ma trận như sau:

Trang 2
Thực hành Cấu trúc dữ liệu & Giải thuật GVHD: Đặng Văn Em
a) Tìm phần tử Min, Max trong mảng 2 chiều.
b) Sắp xếp theo thứ tự zigzag.
c) Sắp xếp theo thứ tự trộn ốc xoáy vào trong
d) Thêm một dòng v vào ma trận ở cuối ma trận
e) Xóa dòng thứ k khỏi ma trận
f) Tìm vị trí của phần tử vừa là phần tử lớn nhất trên dòng của nó đồng thời nhỏ nhất
trên cột của nó.
g) Tính tổng, tích 2 ma trận
h) Tính tổng theo mỗi dòng và cột của ma trận.
i) Xóa một dòng trên mảng 2 chiều vừa nhập.
j) Xóa một cột trên mảng 2 chiều vừa nhập.
Bài 3: Cài đặt viết chương trình nhập vào mảng A[n] sử dụng thuật toán tìm kiếm tuyến tính
và thuật toán tìm kiếm nhị phân để tìm giá trị X trong mảng.
Bài 4: Sinh viên thực hiện 07 bài tập trên wecode và hoàn thiện trước 23h59 ngày
28/03/2023.

Trang 3

You might also like