YOMEDIA
NONE

Tin học 11 Cánh Diều Chủ đề A Bài 2: Mảng hai chiều


Mời các em cùng khám phá nội dung Bài 2: Mảng hai chiều. Thông qua bài học này, các em sẽ trình bày được cấu trúc dữ liệu mảng hai chiều và sử dụng được danh sách để thể hiện mảng hai chiều trong Python. HOC247 hy vọng rằng qua các bài học của chương trình Khoa học máy tính, các em sẽ thu thập những kiến thức hữu ích và thú vị, giúp nâng cao kiến thức về môn Tin học.

ATNETWORK
YOMEDIA
 

Tóm tắt lý thuyết

1.1. Mảng hai chiều

- Mảng hai chiều dùng để lưu trữ một bảng số liệu hình chữ nhật, ví dụ như hình chữ nhật khung đỏ ở Hình 1aHình 1b

- Mảng hai chiều cũng gọi là ma trận.

- Mảng hai chiều là mảng một chiều với phần tử là một mảng một chiều.

 

 

- Hầu hết các ngôn ngữ lập trình bậc cao có kiểu dữ liệu mảng hai chiều.

- Nếu cần, có thể tạo ra mảng nhiều chiều.

- Khai báo mảng hai chiều

 + Khai báo mảng hai chiều cần cung cấp đủ các thông tin: tên biến mảng, kiểu dữ liệu, kích thước

 + Kích thước gồm hai số nguyên dương, mỗi số xác định kích thước một chiều của hình chữ nhật.

- Cấu trúc mảng hai chiều

 + Trong bộ nhớ, mảng hai chiều cũng được tổ chức tương tự như mảng một chiều, tức là lưu trữ thành một khối các ô nhớ liên tục, có độ lớn bằng: số hàng x số cột x độ dài kiểu dữ liệu.

- Truy cập ngẫu nhiên

 + Thông tin trong khai báo mảng hai chiều giúp xác định dung lượng bộ nhớ dành cho mảng.

 + Truy cập phần tử mảng hai chiều cần biết hai chỉ số: hàng và cột.

 + Thời gian đọc/gán giá trị cho mảng hai chiều là hằng số.

 

1.2. Sử dụng danh sách làm mảng hai chiều trong Python

- Kiểu danh sách (list) có sẵn trong Python, rất linh hoạt, hoàn toàn đáp ứng các nhu cầu xử lí dãy số (mảng một chiều) và bảng chữ nhật các số (mảng hai chiều).

- Danh sách dùng làm mảng được khai báo và sử dụng như một danh sách Python thông thường, cú pháp cụ thể như sau:

 + Khai báo danh sách dùng làm mảng (một chiều hoặc hai chiều) với các phần tử hay các danh sách con sẽ được thêm dần vào sau đó.

 Tên_danhsach = []

 + Khai báo danh sách với cặp dấu “[]” chứa danh sách các danh sách con cùng độ dài cho kết quả là một danh sách dùng như mảng hai chiều.

 Tên_danhsach = [[…..],[...], [….]]

- Trong bộ nhớ máy tính, mảng hai chiều n hàng và m cột được lưu trữ thành dãy n x m số bằng cách xếp các hàng tiếp nối nhau, bắt đầu là hàng 0, tiếp theo là hàng 1, hàng 2,... cho đến hết.

Thời gian thực hiện các phép toán của mảng

- Phép chèn, xoá phần tử cuối mảng thực hiện trong thời gian hằng số, bất kể độ dài mảng.

- Phép chèn, xoá phần tử ở vị trí bất kì cần dịch chuyển để tạo hoặc lấp chỗ trống, thời gian thực hiện phụ thuộc vào độ dài n của mảng và khoảng \(\frac{n}{2}\) thao tác dịch chuyển được thực hiện trung bình.   

      

Dịch chuyển tạo chỗ trống khi chèn thêm vào giữa mảng

Bài tập minh họa

Vì sao có thể nói mảng hai chiều là các mảng một chiều?

 

Hướng dẫn giải:

- Mảng hai chiều (2D array) là một cấu trúc dữ liệu trong lập trình, nó cho phép lưu trữ các giá trị dưới dạng một bảng, với các hàng và cột được sắp xếp theo thứ tự. Có thể nói mảng hai chiều là mảng các mảng một chiều là do nó được xây dựng từ các mảng một chiều.

- Khi khai báo một mảng hai chiều, chúng ta định nghĩa một mảng 1 chiều để lưu trữ các phần tử của từng hàng trong bảng, và sau đó định nghĩa một mảng 1 chiều khác để lưu trữ các mảng 1 chiều đó, tức là các hàng của bảng.

3. Luyện tập Bài 2 Chủ đề FCS SGK Tin học 11 Cánh diều

Học xong bài này, em sẽ:

- Trình bày được cấu trúc dữ liệu mảng hai chiều.

- Sử dụng được danh sách để thể hiện mảng hai chiều trong Python.

3.1. Trắc nghiệm Bài 2 Chủ đề FCS SGK Tin học 11 Cánh diều

Như vậy là các em đã xem qua bài giảng Bài 2 Chủ đề FCS SGK Tin học 11 Cánh diều Khoa học máy tính. Để củng cố kiến thức bài học mời các em tham gia bài tập trắc nghiệm Trắc nghiệm Tin học 11 Cánh Diều Chủ đề A Bài 2.

Câu 4-10: Mời các em đăng nhập xem tiếp nội dung và thi thử Online để củng cố kiến thức về bài học này nhé!

3.2. Bài tập Bài 2 Chủ đề FCS SGK Tin học 11 Cánh diều

Các em có thể xem thêm phần hướng dẫn Giải bài tập Tin học 11 Cánh Diều Chủ đề A Bài 2 để giúp các em nắm vững bài học và các phương pháp giải bài tập.

Khởi động trang 94 SGK Tin học 11 Cánh diều - CD

Hoạt động trang 95 SGK Tin học 11 Cánh diều - CD

Luyện tập 1 trang 96 SGK Tin học 11 Cánh diều - CD

Luyện tập 2 trang 96 SGK Tin học 11 Cánh diều - CD

Vận dụng trang 96 SGK Tin học 11 Cánh diều - CD

Câu hỏi 1 trang 96 SGK Tin học 11 Cánh diều - CD

Câu hỏi 2 trang 96 SGK Tin học 11 Cánh diều - CD

4. Hỏi đáp Bài 2 Chủ đề FCS SGK Tin học 11 Cánh diều

Trong quá trình học tập nếu có thắc mắc hay cần trợ giúp gì thì các em hãy comment ở mục Hỏi đáp, Cộng đồng Tin học của HOC247 sẽ hỗ trợ cho các em một cách nhanh chóng!

Chúc các em học tập tốt và luôn đạt thành tích cao trong học tập!

 

-- Mod Tin Học 11 HỌC247

NONE
AANETWORK
 

 

YOMEDIA
ATNETWORK
ON