當前位置:首頁 » 編程語言 » java數組的實現

java數組的實現

發布時間: 2024-10-22 22:18:15

java實現以下演算法:有6個數組a,b,c,d,e,f,從每個數組中取出一個數值,按順序放進指定的數組q中,

package Bai_17;

public class NumberSort {

public static void sort(int[][] root, int[] number){
int[] result = new int[number.length];
for(int i =0;i<number.length;i++){
result[i] = root[i][number[i]];
}
for(int i =0;i<result.length;i++){
for(int j= i;j<result.length-1;j++){

if(result[j]>result[j+1]){
int tmp = result[j];
result[j]=result[j+1];
result[j+1]=result[j];
}
}
}
for(int i=0;i<result.length;i++){
System.out.print(result[i]);
}
}
public static void main(String args[]){
int myvalue[][] = new int[6][6];
int[] number = {5,4,3,2,1,0};
//int count =0;
for(int i =0;i<myvalue.length*myvalue[0].length;i++){
//myvalue[0] = {1,2,3,4,5,6};
myvalue[i/6][i%6]=i;
}
sort(myvalue,number);
}
}
基本的思路。。不過還要debug。。裡面的myvalue[][] 定義了你的六個數組。
然後number[]對應的就是從myvalue裡面index來取值。這程序是從第一個數組裡面的第5個,第二個數組的第四個。。。。取出來之後排序。列印
如果不會debug的話,要等以後了。。

Ⅱ java 如何實現數組排序並輸出每個數字原來的索引

java變成對數組進行排序可以使用ArraySort方法,保存源數組下標值可以存入map中,如下代碼:


importjava.util.ArrayList;importjava.util.Arrays;importjava.util.HashMap;importjava.util.List;publicclassceshi{publicstaticvoidmain(String[]args){intn=5;int[]a={8,5,4,6,2,1,7,9,3};HashMapmap=newHashMap();for(inti=0;i<a.length;i++){map.put(a[i],i);//將值和下標存入Map}//排列Listlist=newArrayList();Arrays.sort(a);//升序排列for(inti=0;i<a.length;i++){list.add(a[i]);}for(Objectobject:list){System.out.print(object+",");}System.out.println();//查找原始下標for(inti=0;i<n;i++){System.out.print(map.get(a[i])+",");}}}

運行結果如下:

Ⅲ 如何用java實現一個數組的排列

首先根據數組的類型不同排序方式也是不同的,如果是基本類型數組,那麼使用冒泡或者其他排序方式都是很簡單的,例如:http://blog.csdn.net/yyywyr/article/details/8075433。如果不想自己寫排序演算法那麼使用Arrays.sort()進行排序也是不錯的。
如果是自定義類型的數組,推薦使用java自帶的工具類:Comparable介面,並重寫CompareTo()方法。或者Compartor。

Ⅳ Java通過幾種經典的演算法來實現數組排序

JAVA中在運用數組進行排序功能時,一般有四種方法:快速排序法、冒泡法、選擇排序法、插入排序法。
快速排序法主要是運用了Arrays中的一個方法Arrays.sort()實現。
冒泡法是運用遍歷數組進行比較,通過不斷的比較將最小值或者最大值一個一個的遍歷出來。
選擇排序法是將數組的第一個數據作為最大或者最小的值,然後通過比較循環,輸出有序的數組。
插入排序是選擇一個數組中的數據,通過不斷的插入比較最後進行排序。下面我就將他們的實現方法一一詳解供大家參考。
<1>利用Arrays帶有的排序方法快速排序

public class Test2{ public static void main(String[] args){ int[] a={5,4,2,4,9,1}; Arrays.sort(a); //進行排序 for(int i: a){ System.out.print(i); } } }

<2>冒泡排序演算法

public static int[] bubbleSort(int[] args){//冒泡排序演算法 for(int i=0;i<args.length-1;i++){ for(int j=i+1;j<args.length;j++){ if (args[i]>args[j]){ int temp=args[i]; args[i]=args[j]; args[j]=temp; } } } return args; }

<3>選擇排序演算法

public static int[] selectSort(int[] args){//選擇排序演算法 for (int i=0;i<args.length-1 ;i++ ){ int min=i; for (int j=i+1;j<args.length ;j++ ){ if (args[min]>args[j]){ min=j; } } if (min!=i){ int temp=args[i]; args[i]=args[min]; args[min]=temp; } } return args; }

<4>插入排序演算法

public static int[] insertSort(int[] args){//插入排序演算法 for(int i=1;i<args.length;i++){ for(int j=i;j>0;j--){ if (args[j]<args[j-1]){ int temp=args[j-1]; args[j-1]=args[j]; args[j]=temp; }else break; } } return args; }

熱點內容
c語言二級程序設計題 發布:2024-10-23 01:17:52 瀏覽:496
哪個安卓瀏覽器能搜到更多影視 發布:2024-10-23 01:10:16 瀏覽:894
oppor9怎麼升級安卓70 發布:2024-10-23 01:09:26 瀏覽:514
上網閘ftp埠 發布:2024-10-23 00:54:55 瀏覽:428
手游腳本編輯 發布:2024-10-23 00:51:00 瀏覽:275
java可以做游戲腳本嗎 發布:2024-10-23 00:49:32 瀏覽:500
大公報資料庫 發布:2024-10-23 00:46:52 瀏覽:250
安卓怎麼屏蔽廣告 發布:2024-10-23 00:37:05 瀏覽:254
伺服器對ip地址刷新 發布:2024-10-23 00:34:45 瀏覽:511
消行編程 發布:2024-10-23 00:25:12 瀏覽:759