Bài giảng Cơ sở dữ liệu - Chương 1: Mảng 2 chiều

pdf 8 trang cucquyet12 4000
Bạn đang xem tài liệu "Bài giảng Cơ sở dữ liệu - Chương 1: Mảng 2 chiều", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfbai_giang_co_so_du_lieu_chuong_1_mang_2_chieu.pdf

Nội dung text: Bài giảng Cơ sở dữ liệu - Chương 1: Mảng 2 chiều

  1. Chương 1: MẢNG 2 CHIỀU 1. Định nghĩa và Khai báo mảng 2 chiều 2. Duyệt qua mảng 2 chiều 3. Nhập xuất dữ liệu cho mảng 2 chiều 4. Một số thuật toán trên mảng 2 chiều a. Thuật toán tính tổng số và tích số b. Thuật toán đếm c. Thuật toán tìm kiếm d. Thuật toán sắp xếp
  2. 1. Định nghĩa và Khai báo mảng 2 chiều • Định nghĩa – Mảng 2 chiều dùng để lưu các phần tử cùng tên và cùng kiểu dữ liệu – Người ta dùng 1 cặp chỉ số để lưu các đối tượng 2 chiều như dòng cột, hoành độ tung độ, ma trận, ma phương • Khai báo – Cú pháp tenmang[size1][size2] trong đó • là kiểu dữ liệu vô hướng hoặc có cấu trúc • tenmang: được đặt theo qui tắc tên biến • [size1]/[size2] là kích thước 2 chiều tương ứng
  3. 2. Duyệt qua mảng 2 chiều • Không giống như mảng 1 chiều, mảng hai chiều có những cách duyệt như sau: – Duyệt qua các phần tử của mảng – Duyệt qua các phần tử trên cùng hàng hoặc cùng cột – (Mang vuong)Duyệt qua các phần tử nằm trên đường chéo chính(i==j)/phụ (i+j==n-1) của mảng vuông – Duyệt qua nửa mảng vuông[i =j]/[i+j>=n-1].
  4. 3. Nhập xuất dữ liệu cho mảng 2 chiều • Truy cập đến từng phần tử của mảng 2 chiều: tenmang[cs1][cs2] trong đó – cs1 có giá trị từ 0 size1-1 – cs2 có giá trị từ 0 size2-1 • Nhập dữ liệu – Duyệt qua từng phần tử của mảng để nhập. – Việc đưa dữ liệu vào mảng 2 chiều thường hay phát sinh lỗi nên người ta thường dùng biến temp để nhập liệu rồi gán cho phần tử của mảng. • Xuất dữ liệu – Duyệt qua từng phần tử của mảng 2 chiều và xuất dữ liệu.
  5. 4. Một số thuật toán trên mảng 2 chiều a. Thuật toán tính tổng số và tích số •Gọi P = tập hợp một số cặp chỉ số của mảng 2 chiều A. •S = 0; /S = 1 •Lặp với mọi (i,j) thuộc P làm nếu A[i][j] thỏa điều kiện thì S = S+A[i][j] /S = S * A[i][j] •Cuối lặp
  6. 4. Một số thuật toán trên mảng 2 chiều b. Thuật toán đếm •Gọi P = tập hợp một số cặp chỉ số của mảng 2 chiều A. •count = 0 •Lặp với mọi (i,j) thuộc P làm nếu A[i][j] thỏa điều kiện thì count = count +1 •Cuối lặp
  7. 4. Một số thuật toán trên mảng 2 chiều c. Thuật toán tìm kiếm •Gọi P = tập hợp một số cặp chỉ số của mảng 2 chiều A. •Lặp trong khi (i,j) thuộc P và chưa tìm thấy nếu A[i][j] thỏa điều kiện thì đánh dấu cặp chỉ số (i,j) thoát •Cuối lặp •Chú ý: Thông thường chúng ta dùng cohieu để báo cho biết đã tìm thấy chưa.
  8. 4. Một số thuật toán trên mảng 2 chiều d. Thuật toán sắp xếp • Do tính chất của mảng 2 chiều gồm dòng và cột nên bài toán sắp xếp cần được xác định rõ là sắp xếp theo qui tắc nào. • Bài toán sắp xếp trên mảng hai chiều là sự phối hợp giữa các phương pháp duyệt qua mảng 2 chiều và sắp xếp trên mảng 1 chiều. • Có thể sắp xếp theo cột, theo dòng • Giữa các cột, dòng lại có thể sắp xếp độc lập theo qui tắc riêng – Ví dụ: cột thứ nhất sắp xếp theo chiều tăng, cột thứ hai sắp xếp theo chiều giảm.