導航:首頁 > 編程語言 > java對二維數組排序

java對二維數組排序

發布時間:2022-12-10 11:57:09

java中怎麼對二維數組的列排序

這個就是可以直接排組的,根據數組的定義來。如a[][]={(1,2),(3,4)......}類似這些

❷ java編寫一個方法,使用下面的方法頭對二維數組排序 public static void sort(int m[][])

沒理解樓主的問題,所以寫了兩個,看是哪個
//1
publicstaticvoidmain(String[]args){
intbefore[][]={{2,3},{4,2},{5,2},{1,3},{4,1}};
sort(before);
show(before);
}

privatestaticvoidshow(int[][]before){
for(inti=0;i<before.length;i++){
for(intj=0;j<before[i].length;j++){
System.out.print(before[i][j]);
System.out.print(",");
}
System.out.println();
}
}

publicstaticvoidsort(intnum[][]){
inttemp=num[0].length;
for(inti=0;i<temp;i++){
if(i==0){
int[]temp1;
for(intj=0;j<num.length;j++){
for(intj2=j+1;j2<num.length;j2++){
if(num[j][i]>num[j2][i]){
temp1=num[j];
num[j]=num[j2];
num[j2]=temp1;
}
}
}
}
if(i==1){
inttemp2;
for(intj=0;j<num.length;j++){
for(intj2=j+1;j2<num.length;j2++){
if(num[j][i-1]==num[j2][i-1]){
if(num[j][i]>num[j2][i]){
temp2=num[j][i];
num[j][i]=num[j2][i];
num[j2][i]=temp2;
}
}
}
}
}
}

}
//1結果:
//1,3,
//2,3,
//4,1,
//4,2,
//5,2,
//---------------------------
//2
publicstaticvoidmain(String[]args){
inti,j;
Scannerinput=newScanner(System.in);
System.out.println("pleaseinputtherow:");
intm=input.nextInt();
System.out.println("pleaseinputthecolumn:");
intn=input.nextInt();
int[][]before=newint[m][n];
System.out.println("pleaseinputthebefore:");
for(i=0;i<m;i++){
for(j=0;j<n;j++){
before[i][j]=input.nextInt();
}
}
for(int[]ks:before){
sort(ks);
}
show(before);
}

privatestaticvoidshow(int[][]before){
for(inti=0;i<before.length;i++){
for(intj=0;j<before[i].length;j++){
System.out.println("num"+i+":"+before[i][j]);
}
}
}

publicstaticvoidsort(intnum[]){
inttemp;
for(inti=0;i<num.length;i++){
for(intj=i+1;j<num.length;j++){
if(num[i]>num[j]){
temp=num[i];
num[i]=num[j];
num[j]=temp;
}
}
}
}

❸ Java編程,二維數組排序

並沒有變,只是將二位數組的每行(看成矩陣)作為一維數組進行排序(升序),a[k] (k=0,1,2,3)是每行的首地址

❹ 二維數組排序java

提問者的問題縮寫的太厲害了。沒有說清楚,二維數組是按什麼個方式進行排序?可以採用的方法,通常可以有三種,第一種是按每行的元素大小進行排序,第二種是按每一列的大小進行排序,第三種是把所有的行和列作為一個整體進行排序。

❺ java 對二維數組排序的幾種方法

我就是舉一個num[3][3]的例子啊
如果是更大的數組,只要改動一下代碼中 i,j的值就可以了
我也正在學java,
QQ:374122021,希望能多交流,一起進步

剛開始忽略了一個小東西,現在可以了

public class Test
{
public static void main(String[] args)
{
MyTest t=new MyTest();
t.f();
t.print();
}
}
class MyTest
{
int [][] num=new int[][]{{2,3,8},{9,1,6},{3,5,7}};
int t;
void f()
{
for(int j=0;j<3;j++)
for(int k=0;k<2;k++)
for(int i=0;i<2;i++)
{
if(num[i][j]>num[i+1][j])
{t=num[i][j];num[i][j]=num[i+1][j];num[i+1][j]=t;}
}
}
void print()
{
for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++)
System.out.print(num[i][j]+" ");
System.out.println();
}
}

}

❻ java中如何使用arrays.sort()對二維數組排序

沒辦法直接排序的。自己寫排序方法吧。你也可以用List或Map存放數據,再用Collections的sort(list,comprator)進行排序。comprator是重寫的比較器,要怎麼排都隨你。

❼ Java 二維數組如何先對行再對列排序

class abcd{
public static void main(String args[]){
int a[][] = {{4,1},{1,2},{2,3},{2,1},{3,2},{3,1},{1,1}};

for(int i = 0 ; i<a.length; i++){
for(int j = i ; j <a.length ;j++){
if(a[i][0] > a[j][0] || (a[i][0] == a[j][0] && a[i][1] > a[j][1])){
int temp = a[i][0];
a[i][0] = a[j][0];
a[j][0] = temp;

temp = a[i][1];
a[i][1] = a[j][1];
a[j][1] = temp;
}
}
}
for(int i = 0 ;i<a.length ;i++){
System.out.println(a[i][0]+","+a[i][1]);
}
}
}

❽ java中怎麼進行二維數組的行排序

比如一個二維int數組 int[][] a={{...},{...},{....},{...}};
進行遍歷的話
//這是第一層遍歷-行遍歷
for(int i=0;i<a.length;i++){
//這是第二層的遍歷-列遍歷

for(int j=0;j<a[i].length;j++){
}

}

❾ java二維數組只對每行的數據進行排序

你可以把二維數組理解成普通的一維數組,只不過這個一維數組的每一個元素又是一個數組。
像遍歷普通數組那樣遍歷二維數組的行,這樣就得到了每一行的數組,然後排序。ok

閱讀全文

與java對二維數組排序相關的資料

熱點內容
如何批量快速壓縮視頻 瀏覽:432
我的世界如何加入ice伺服器 瀏覽:873
兄弟cnc編程說明書 瀏覽:204
php閃電入門教程學習 瀏覽:152
金岳霖邏輯pdf 瀏覽:938
linuxtomcat線程 瀏覽:77
pboc長度加數據加密 瀏覽:187
英雄聯盟國際服手游怎麼下安卓 瀏覽:297
程序員的思路 瀏覽:234
只能用命令獲得的四種方塊 瀏覽:358
怎麼用命令方塊防止開創造 瀏覽:807
掃描版的pdf 瀏覽:790
編程貓怎樣做3d游戲 瀏覽:207
怎麼查找雲伺服器上的ftp 瀏覽:156
我的世界伺服器如何注冊賬號 瀏覽:934
統計英文字元python 瀏覽:424
linux信息安全 瀏覽:910
壓縮機接線柱爆 瀏覽:1000
程序員自主創業 瀏覽:585
匯編程序員待遇 瀏覽:360