Cấu trúc dữ liệu mảng Array trong C/C++ – Lập Trình Từ Đầu

Trong bài này tất cả chúng ta sẽ cùng ôn lại 1 số ít khái niệm về mảng ( array ) và những setup tương quan đến cấu trúc tài liệu mảng sau đó là việc nhìn nhận ưu điểm yếu kém của việc sử dụng mảng. Bạn đọc hãy chắc như đinh rằng đã từng đọc qua những khái niệm về mảng trong C / C + + để tiếp cận dễ hơn với bài này !

1. Cấu trúc tài liệu dạng mảng

Mảng ( hay còn gọi là array ) được hiểu là một vùng chứa những tài liệu có cùng kiểu với nhau. Trong ngôn từ lập trình C / C + + ( hay nhiều ngôn từ khác ) một mảng cũng được coi là một cấu trúc tài liệu .
Cấu trúc tài liệu mảng hoặc mảng là một cấu trúc tài liệu gồm có một nhóm những thành phần giá trị hoặc biến, trong mảng có hai khái niệm quen thuộc mà ta đã biết đó là :

  • Phần tử của mảng
  • Chỉ số phần tử (index)

2. Biểu diễn mảng một chiều và hai chiều

Trong phạm vi của mảng, ta thường sử dụng mảng một chiều và mảng hai chiều. (Đôi khi mảng một chiều còn được gọi là vector còn mảng hai chiều được gọi là ma trận).

Mảng 1 chiều được ngầm hiểu như một dãy chữa những thành phần có cùng kiểu tài liệu với nhau :
Ví dụ một mảng có size 10 thành phần và chứa những thành phần là số nguyên trong khoản từ 1 -> 10 :

int arr[10] = {1,2,3,4,5,6,7,8,9,10};

Chúng ta tưởng tượng những thành phần và chỉ số trong mảng như sau :

Để truy cập vào bất kỳ phần tử nào có trong mảng, ta cần biết chỉ số (index) của phần tử đó. Ví dụ truy cập vào chỉ số arr[4] sẽ có giá trị là 5 (hay còn hiểu là giá trị 5 là phần tử ở chỉ số arr[4])

Chú ý: Chỉ số (index) của mảng một chiều hay nhiều chiều luôn bắt đầu từ số 0.

Tiếp theo của mảng một chiều ta có mảng hai chiều ( hay ma trận ). Đối với mảng hai chiều ta ngầm hiểu như một bảng gồm có những hàng và những cột .
Ví dụ một mảng hai chiều tàng trữ những thành phần có kiểu số nguyên từ 1 -> 12 và có size 3 × 4 ( 3 hàng và 4 cột ), khi được màn biểu diễn trong C / C + + sẽ là :

int number[10] = {
    {1,2,3,4},
    {5,6,7,8},
    {9,10,11,12}
};

Tưởng tượng mảng 2 chiều trên như sau :

Để truy cập vào một phần tử trong mảng 2 chiều, ta cần xác định được chỉ số hàng và chỉ số cột của phần tử đó. Ví dụ number[1][2] (truy cập ở hàng thứ 1 và cột thứ 2) ta sẽ nhận được kết quả là 7.

Tương tự như mảng một chiều, chỉ số hàng và chỉ số cột trong mảng hai chiều cũng mở màn từ số 0 .

3. Các thao tác với mảng

Trong quá trình sử dụng mảng, chắc hẳn ta sẽ cần một số thao tác nhất định. Một số thao tác căn bản đối với mảng sẽ là:

  • Duyệt mảng
  • Chèn phần tử
  • Cập nhật phần tử
  • Tìm kiếm phần tử
  • Xóa phần tử

Ở trong những bài tiếp theo, tất cả chúng ta sẽ cùng nhau khám phá chi tiết cụ thể về cách setup những thao tác trên so với mảng một chiều trong ngôn từ C / C + +. Bạn đọc hoàn toàn có thể ôn lại loạt bài về lập trình C cơ bản để thuận tiện tiếp cận hơn trong những bài sau !

4. Ưu điểm yếu kém cấu trúc tài liệu dạng mảng

Ưu điểm : Truy cập thành phần trong mảng nhanh gọn, sử dụng bộ nhớ cố định và thắt chặt, thuận tiện học và thiết lập
Nhược điểm : Không thể biến hóa size bộ nhớ khi chương trình được thực thi