เมทริกซ์สามารถข้ามผ่านได้สองวิธี การข้ามผ่านแถวเป็นการเข้าชมแต่ละแถวทีละแถวโดยเริ่มจากแถวแรก ตามด้วยแถวที่สอง และไปเรื่อยๆ จนถึงแถวสุดท้าย องค์ประกอบในแถวถูกส่งกลับจากดัชนี 0 ไปยังดัชนีสุดท้าย
ในการข้ามผ่านตามคอลัมน์ องค์ประกอบจะถูกข้ามผ่านจากคอลัมน์แรกไปยังคอลัมน์สุดท้ายตามลำดับ
ในเมทริกซ์ 2 มิติ M[i][j] ดัชนี i ใช้สำหรับแสดงแถวและดัชนี j ใช้สำหรับแสดงคอลัมน์ สำหรับการข้ามผ่านแถวโดยเริ่มจาก
i=0 แถวที่ 0 และ 0<=j<ดัชนีสุดท้าย
i=แถวที่ 1 และ 0<=j<ดัชนีสุดท้าย
.....
i=แถวสุดท้าย และ 0<=j<ดัชนีสุดท้าย
สำหรับการข้ามผ่านคอลัมน์ ให้เริ่มจาก
j=0 คอลัมน์ที่ 0 และ 0<=i<ดัชนีสุดท้าย
j=คอลัมน์ที่ 1 และ 0<=i<ดัชนีสุดท้าย
.....
j=คอลัมน์สุดท้าย และ 0<=i<ดัชนีสุดท้าย
ลำดับของดัชนียังคงเหมือนเดิมในอาร์เรย์ 2 มิติ M[i][j]- i สำหรับแถวและ j สำหรับคอลัมน์
ตัวอย่าง
ป้อนข้อมูล −
int arr[MAX][MAX] ={ {1,2,3,4,5},{6,7,8,9,0}, {5,4,3,2,1},{ 0,0,0,0,0}, {8,9,7,6,1}};
ผลผลิต −
แถว Major Traversal1 2 3 4 56 7 8 9 05 4 3 2 10 0 0 0 08 9 7 6 1 คอลัมน์ Major Traversal1 6 5 0 82 7 4 0 93 8 3 0 74 9 2 0 65 0 1 0 1ก่อน>คำอธิบาย −ผลลัพธ์เป็นตัวอธิบาย
ป้อนข้อมูล −
int arr[MAX][MAX] ={ {1,1,1,1,1},{2,2,2,2,2}, {3,3,3,3,3},{ 4,4,4,4,4}, {5,5,5,5,5}};ผลผลิต −
แถวเมเจอร์ทราเวอร์แซล1 1 1 1 12 2 2 2 2 23 3 3 3 34 4 4 4 45 5 5 5 5 คอลัมน์เมเจอร์ Traversal1 2 3 4 51 2 3 4 51 2 3 4 51 2 3 4 51 2 3 4 5ก่อน>คำอธิบาย − ผลลัพธ์เป็นตัวอธิบาย
แนวทางที่ใช้ในโปรแกรมด้านล่างมีดังนี้
ในแนวทางนี้ เราใช้ two for loops ในการพิมพ์อินพุต 2D matrix matrix ในการข้ามผ่านแบบ row-wise และ column wise
-
ใช้อาร์เรย์อินพุต arr[][] เพื่อแทนเมทริกซ์ 2 มิติ
-
ใช้ตัวแปร i และ j เป็นดัชนีสำหรับองค์ประกอบแถวและองค์ประกอบคอลัมน์
-
สำหรับการข้ามผ่านแบบแถว ให้เริ่มการวนรอบจากดัชนี i=0 ถึง i
-
ข้างใน ให้เริ่มการวนซ้ำซ้อนจาก j=0 ถึง j
-
พิมพ์ arr[i][j]
-
สำหรับการข้ามผ่านตามคอลัมน์ ให้เริ่ม a for loop จากดัชนี j=0 ถึง j
-
ข้างใน ให้เริ่มการวนซ้ำซ้อนจาก i=0 ถึง i
-
พิมพ์ arr[i][j].
ตัวอย่าง
#includeใช้เนมสเปซ std;#define MAX 5int main(){ int arr[MAX][MAX] ={ {1,2,3,4,5},{6,7 ,8,9,0},{5,4,3,2,1},{0,0,0,0,0},{8,9,7,6,1}}; int ฉัน, เจ; cout<<"แถวหลัก Traversal "< ผลลัพธ์
หากเรารันโค้ดด้านบน มันจะสร้างผลลัพธ์ต่อไปนี้
แถว Major Traversal1 2 3 4 56 7 8 9 05 4 3 2 10 0 0 0 08 9 7 6 1 คอลัมน์ Major Traversal6 5 0 8 3 2 7 6 4