(別說格式有問題代碼就是這樣的)編寫矩陣顯示方法,用于顯示我們的矩陣數(shù)據(jù);
在若羌等地區(qū),都構建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務理念,為客戶提供網(wǎng)站設計制作、網(wǎng)站設計 網(wǎng)站設計制作按需設計,公司網(wǎng)站建設,企業(yè)網(wǎng)站建設,成都品牌網(wǎng)站建設,全網(wǎng)營銷推廣,成都外貿(mào)網(wǎng)站制作,若羌網(wǎng)站建設費用合理。
private static void printArray(int[][] arr){
for(int i=0;iarr.length;i++){
for(int j=0;jarr.length;j++){
System.out.print(arr[i][j]+" ");
}
System.out.println();
填寫一個要求解轉置的矩陣方法;
編寫行變列列變行的代碼,即實現(xiàn)我們的矩陣值裝置求解方法;
public static void main(String[] args) {
int arr[][] =new int[][]{{1,2,3},{4,5,6},{7,8,9}};
System.out.println("行列互換前");
printArray(arr);
int arr2[][]=new int[arr.length][arr.length];
for(int i=0;iarr.length;i++){
for(int j=0;jarr.length;j++){
arr2[i][j]=arr[j][i];
}
}
System.out.println("行列互換后:");
printArray(arr2);
/*我的想法是,先把二維矩陣轉換成一維矩陣,這個循環(huán)一下就可以了,然后把輸入的二維位置也轉換成一維的位置,依此往前替換,補0,然后把這個一維矩陣再轉換成二維矩陣**/
public static void main(String[] args) {
int[][] erwei = new int[][]{{1,10,3},{4,55,6},{73,8,9}};
int[] yiwei = toyiwei(erwei);
int x=1,y=2,num=0;
//要移動的元素在一維矩陣上的位置
num = (y-1)*erwei.length+(x-1);
//替換
for(int i=num;iyiwei.length-1;i++){
yiwei[i] = yiwei[i+1];
}
//補0
yiwei[yiwei.length-1]=0;
//轉換為二維矩陣
erwei = toerwei(yiwei,erwei.length,erwei[0].length);
//打印
for(int i=0;ierwei.length;i++){
for(int j=0;jerwei[i].length;j++){
System.out.print(erwei[i][j]+" ");
}
System.out.println();
}
}
//二維矩陣轉換成一維矩陣
static int[] toyiwei(int[][] erwei)
{
int[] rs = new int[erwei.length*erwei[0].length];
for(int i=0;ierwei.length;i++){
for(int j=0;jerwei[i].length;j++){
rs[i*erwei.length+j] = erwei[i][j];
}
}
return rs;
}
//一維矩陣轉換成二維矩陣
static int[][] toerwei(int[] yiwei,int a,int b)
{
int[][] erwei = new int[a][b];
for(int i=0;ia;i++){
for(int j=0;jb;j++){
erwei[i][j]=yiwei[i*a+j];
}
}
return erwei;
}
借花獻佛
/**
*?實現(xiàn)二維數(shù)組的轉置
*?@author?HAN
*
*/
public?class?transposition_Arrays2D_ch6_4?{
final?static?double?PI=3.1415;
public?static?void?main(String[]?args)?{
/*StaticTest?st1=new?StaticTest();
StaticTest?st2=new?StaticTest();
st1.method2("HAN");*/
/*****定義要用于轉置的二維數(shù)組*******/
int?arr2D[][]={{1,2,3},{4,5,6},{7,8,9}};
/*****構造結果新二維數(shù)組用于存放轉置結果*******/
/*定義結果數(shù)組變量,注意?一定要先開辟一個內存,
否則只是地址傳遞,也就是說兩個數(shù)組名實際上指向的是同一塊內存*/
//而構造二維數(shù)組可以為維度來進行,不一定是一個矩陣,即每一行的長度不一定相同
int?result_arr[][]=new?int[arr2D.length][];//先實現(xiàn)第一維
for(int?i=0?;?iarr2D.length;i++){?//再實現(xiàn)第二維
result_arr[i]=new?int[arr2D[i].length];
}
// int?result_arr[][]=Arrays.copyOf(arr2D,?arr2D.length);
//上面這個命令行行不通!
/*****輸出用于轉置的二維數(shù)組*******/
for?(int?x[]:arr2D){
for(int?e:x){
System.out.print(e+"?");
}
System.out.println();
}
System.out.println();
/*******進行元素倒置******/
for(int?i=0?;?iarr2D.length;i++){
for(int?j=0;?jarr2D[i].length;j++){
result_arr[j][i]=arr2D[i][j];?//轉置核心
}
}
/*****show?the?result?in?the?result?matrix*******/
for?(int?x[]:result_arr){
for(int?e:x){
System.out.print(e+"?");
}
System.out.println();
}
}
}
//import?java.util.Arrays;
//public?class?transposition_Arrays2D?{
//
// public?static?void?main(String[]?args)?{
// int?arr2D[][]={{1,2,3},{4,5,6},{7,8,9}};
// /*定義結果數(shù)組變量,注意?一定要先開辟一個內存,
// 否則只是地址傳遞,也就是說兩個數(shù)組名實際上指向的是同一塊內存*/
// int?result_arr[][]=new?int[arr2D.length][];
// for(int?i=0?;?iarr2D.length;i++){
// result_arr[i]=new?int[arr2D[i].length];
// }
//
//????????//?進行元素倒置
//????????for(int?i=0?;?iarr2D.length;i++){
//???????? for(int?j=0;?jarr2D[i].length;j++){
//???????? result_arr[j][i]=arr2D[i][j];
//???????? }
//????????}
//????????
//????????//?show?the?result?in?matrix
//????????for?(int?x[]:result_arr){
//???????? for(int?e:x){
//???????? System.out.print(e);
//???????? }
//???????? System.out.println();
//????????}
//????????
// }
//
//}
可以使用嵌套的for循環(huán)來輸出一個矩陣。以下是一個示例代碼,它將創(chuàng)建一個大小為N×N的矩陣,其中N是從用戶輸入的數(shù)字中獲取的。
import java.util.Scanner;
public class Matrix {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("請輸入矩陣的大小: ");
int n = scanner.nextInt();
// 創(chuàng)建一個大小為n x n的矩陣
int[][] matrix = new int[n][n];
// 初始化矩陣
for (int i = 0; i n; i++) {
for (int j = 0; j n; j++) {
matrix[i][j] = i * n + j + 1;
}
}
// 輸出矩陣
for (int i = 0; i n; i++) {
for (int j = 0; j n; j++) {
System.out.print(matrix[i][j] + " ");
}
System.out.println();
}
}
}
在上面的示例代碼中,首先從用戶輸入中獲取矩陣的大小,然后使用兩個for循環(huán)來創(chuàng)建一個大小為n×n的矩陣,并將其初始化。最后,再次使用兩個for循環(huán)來輸出矩陣的值。
網(wǎng)頁標題:矩陣轉換成java代碼 矩陣轉換成一個數(shù)
轉載來源:http://jinyejixie.com/article10/ddcoigo.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、網(wǎng)站制作、ChatGPT、外貿(mào)建站、動態(tài)網(wǎng)站、移動網(wǎng)站建設
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)