The transposition of a matrix is one of the most commonly studied questions in school or collages when learning Java Programs in practical labs.
Pseudo Logic Building
- First we declare a 2-dimensional array to represent a matrix.
- We add the values to the elements of the array.
- We find the dimension of the matrix - rows and column size.
- Create a new array (matrix) of the swapped dimensions - rows of our original array becomes columns and columns as row.
- Finally we loop the rows and columns of the original matrix and add these elements to the column and row of the transposed matrix.
- Finally we print our transposed matrix.
Java Program To Transpose A Matix
package org.code2care.java.arrays.examples;
import java.util.Arrays;
/**
* Java Program to transpose a
* Matrix
* <p>
* Author: Code2care.org
* Date: 28 Apr 2023
*/
public class JavaMatrixTranspose {
public static void main(String[] args) {
//2-D Matrix
int[][] originalMatrix = {
{1, 4},
{2, 5},
{3, 6}
};
int matrixRows = originalMatrix.length;
int matrixCols = originalMatrix[0].length;
//New matrix to store the transposed rows and columns
int[][] transpose = new int[matrixCols][matrixRows];
for (int i = 0; i < matrixRows; i++) {
for (int j = 0; j < matrixCols; j++) {
//copy into transposed originalMatrix
transpose[j][i] = originalMatrix[i][j];
}
}
System.out.println("Input Matrix:");
Arrays.stream(transpose)
.forEach(row -> {
Arrays.stream(row)
.forEach(element -> System.out.print(element + " "));
System.out.println();
});
System.out.println("Transposed Matrix:");
Arrays.stream(originalMatrix)
.forEach(row -> {
Arrays.stream(row)
.forEach(element -> System.out.print(element + " "));
System.out.println();
});
}
}
Output:
Input Matrix:
1 2 3
4 5 6
Transposed Matrix:
1 4
2 5
3 6
Let us see another example with a Square 3x3 matix.
Tranpose a 3x3 Matix in Java
package org.code2care.java.arrays.examples;
import java.util.Arrays;
/**
* Transpose 3x3 Matrix
* Author: Code2care.org
* Date: 28 Apr 2023
*/
public class JavaMatrixTranspose {
public static void main(String[] args) {
//3x3 Matrix
int[][] input3x3Matrix = {
{21, 14, 41},
{23, 53, 34},
{43, 46, 56}
};
int matrixRows = input3x3Matrix.length;
int matrixCols = input3x3Matrix[0].length;
int[][] transpose = new int[matrixCols][matrixRows];
for (int i = 0; i < matrixRows; i++) {
for (int j = 0; j < matrixCols; j++) {
transpose[j][i] = input3x3Matrix[i][j];
}
}
System.out.println("Input Matrix:");
Arrays.stream(transpose)
.forEach(row -> {
Arrays.stream(row)
.forEach(element -> System.out.print(element + " "));
System.out.println();
});
System.out.println("Transposed Matrix:");
Arrays.stream(input3x3Matrix)
.forEach(row -> {
Arrays.stream(row)
.forEach(element -> System.out.print(element + " "));
System.out.println();
});
}
}
Output:
Input Matrix:
21 23 43
14 53 46
41 34 56
Transposed Matrix:
21 14 41
23 53 34
43 46 56
Have Questions? Post them here!
- Create a Zip file using Java Code programmatically
- Eclipse : A java Runtime Environment (JRE) or Java Development kit (JDK) must be available
- How to Sort a LinkedList in Java
- Loading class com.mysql.jdbc.Driver. This is deprecated. The new driver class is com.mysql.cj.jdbc.Driver
- How to declare and initialize Array in Java Programming
- [Fix] java: integer number too large compilation error
- Java JDBC Connection with MySQL Driver in VS Code + Troubleshooting
- Reading .xls and .xlsx Excel file using Apache POI Java Library
- IntelliJ: Error: Could not find or load main class, java.lang.ClassNotFoundException
- How to get Client IP address using Java Code Example
- Truncate table using Java JDBC Example
- Struts 2 : There is no Action mapped for namespace [/] and action name [form] associated with context path [/proj]
- How to get file path in Idea IntelliJ IDE
- Java Generics explained with simple definition and examples
- Java SE 8 Update 301 available with various bug fixes and security improvements
- Java: Collect Stream as ArrayList or LinkedList
- Java JDBC Connection with PostgreSQL Driver Example
- How to check if Java main thread is alive
- How to fix Java nio NoSuchFileException wile reading a file
- Java 8+ get Day of the Week Examples with LocalDateTime, DateTime, ZonalDateTime and Instant classes
- Ways to Convert Integer or int to Long in Java
- [Java] How to throws Exception using Functional Interface and Lambda code
- [Fix] Spring Boot: mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
- Java: The value of the local variable string is not used
- Java JDBC: Insert Java 8 LocalDate and Time using PreparedStatement
- macOS Ventura: In order to use Xcode.app you need to update to the latest version - MacOS
- JavaScript : Get current page address - JavaScript
- How to verify if java is installed on the computer and get version detail - Java
- List of all iPads till year 2020 - Apple
- How to fix Java nio NoSuchFileException wile reading a file - Java
- Location of eclipse.ini file on Mac OS X - Mac-OS-X
- Vertical align two div's in Bootstrap [HTML CSS] - Bootstrap
- ChatGPT Outage: Hmm...something seems to have gone wrong. Maybe try me again in a little bit. - HowTos