Mảng hai chiều¶
Tóm lược nội dung
Bài này trình bày những khái niệm về mảng hai chiều.
Đặt vấn đề¶
Làm thế nào xử lý khi dữ liệu không phải là một dãy, mà là một bảng số liệu?
Khái quát về mảng¶
Tương tự bài học trước, mảng là cấu trúc dữ liệu dùng để lưu trữ và xử lý tập hợp các phần tử.
Bài học này đề cập mảng hai chiều và cũng sử dụng thư viện numpy
để viết chương trình minh hoạ.
Mảng hai chiều¶
Hình ảnh của mảng hai chiều trong thực tế:
- Bàn cờ vua
- Bảng số Sudoku
- Bảng tính Excel
Mảng hai chiều có thể áp dụng khi xử lý dữ liệu có dạng:
- Bảng
- Lưới
- Ma trận
Trong mảng hai chiều, số phần tử của mỗi hàng ứng với số cột của mảng. Nói cách khác, các hàng đều có số phần tử hoặc số cột bằng nhau.
Minh họa mảng hai chiều A
Mảng hai chiều có thể được xem là mảng của các mảng, nghĩa là, mỗi phần tử của mảng hai chiều là mảng một chiều.
Hỏi chút chơi - phần 1
Khởi tạo¶
Tương tự mảng một chiều, ta cũng dùng hàm array()
của thư viện numpy
để khởi tạo mảng hai chiều.
Các phần tử được liệt trong các cặp ngoặc vuông lồng nhau: [[ ], [ ], ... ]
Ví dụ:
Yêu cầu: Khởi tạo mảng hai chiều A
bằng cách liệt kê phần tử.
\n
là ký tự xuống dòng.
Output:
Để khởi tạo mảng hai chiều gồm các phần tử cùng giá trị, ta dùng hàm full()
của thư viện numpy
.
Ví dụ:
Yêu cầu: Khởi tạo mảng hai chiều zeros
gồm 3 hàng, 4 cột và các phần tử đều có giá trị 0
.
Output:
Hỏi chút chơi - phần 2
Truy xuất phần tử¶
Mỗi phần tử của mảng hai chiều được truy xuất bằng hai chỉ số, gồm chỉ số hàng và chỉ số cột, đặt trong hai cặp ngoặc vuông [][]
, chỉ số hàng nằm trước, chỉ số cột nằm sau.
Ví dụ:
Yêu cầu: In ra màn hình giá trị của phần tử đầu tiên và phần tử nằm ở hàng 2, cột 3 của mảng A (cũng là phần tử cuối cùng).
Output:
Hỏi chút chơi - phần 3
Nếu xem mảng hai chiều A
là mảng một chiều thì mỗi phần tử của A
là một hàng.
Do đó, để lấy được số hàng của A
, ta viết len(A)
, nghĩa là độ dài của mảng một chiều A
.
Mỗi hàng của mảng hai chiều A
cũng là một mảng một chiều.
Do đó, để lấy được số cột của mảng A
, ta dùng hàm len()
với một hàng bất kỳ. Chẳng hạn: len(A[0])
, nghĩa là độ dài của hàng đầu tiên.
Ví dụ:
Yêu cầu: In ra số hàng và số cột của mảng hai chiều A.
Output:
Hỏi chút chơi - phần 4
Duyệt mảng¶
Khi duyệt mảng hai chiều, ta thường dùng hai vòng lặp lồng nhau:
- Vòng lặp ngoài dùng để duyệt các hàng.
- Vòng lặp trong dùng để duyệt các cột, tức các phần tử của hàng đang duyệt.
Ví dụ:
Yêu cầu: In mảng hai chiều theo dạng hàng và cột.
Output:
Hỏi chút chơi - phần 5
Sơ đồ tóm tắt¶
Mã nguồn¶
Các đoạn mã trong bài được đặt tại:
Some English words¶
Vietnamese | Tiếng Anh |
---|---|
cột | column |
hàng | row |
mảng của mảng | array of arrays |
mảng hai chiều | two-dimensional array |
Bài tập thực hành¶
-
Chưa có