2012-09-12 55 views
0
value1 = 0 and value2 = 0 with weight 0 

value1 = 1 and value2 = 6 with weight 5 

value1 = 2 and value2 = 4 with weight 4 

value1 = 3 and value2 = 3 with weight 2 

value1 = 5 and value2 = 2 with weight 4 

value1 = 5 and value2 = 7 with weight 6 

value1 = 8 and value2 = 5 with weight 6 

我將如何存儲此輸出到一個新的數組(不同的數組值1,值和權重),並比較它們如何算法的輸出存儲到一個新的數組

+0

聽起來不太難。你有什麼嘗試?你有沒有讀過[this]這樣的內容?(http://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html) – madth3

+5

請澄清問題所在。你不知道如何創建3個數組?你想更新一個數組,同時保留舊值的地方?什麼是「輸出」?你剛剛描述了3組值。什麼是輸入和輸出是什麼? – Jay

+0

這是我從我以前的算法得到的輸出,我想將它們存儲到一個新的數組,以便我可以比較它們。因此,我將從valu1和value2中獲取不完全由其他人支配的值 –

回答

0

您可以創建包含一個bean該值1,值和重量這樣

public class AlgoItem { 
    private Integer value1; 
    private Integer value2; 
    private Integer weight; 
    // Setter and getter 
} 

,並使用集合來存儲它(你可以用一個HashSet或ArrayList中執行的集合)

所以你的方法將返回一個AlgoItem

0

的集合可以使用二維陣列

 int[][] values = new int[][] {{ 0, 0, 0}, {1, 6, 5}, {2,4,4}}; 

第一陣列是包含您的3個值數組的數組。

這是簡單和骯髒的方式。我會建議製作一個包含所有3個值的對象,然後列出它們的列表。

0

我還不確定你的問題是什麼。也許你應該告訴我們你試過的東西沒有用。

int[] value1=new int[7]; 
int[] value2=new int[7]; 
int[] weight=new int[7]; 

value1[0]=0 
value2[0]=0; 
weight[0]=0; 

value1[1]=1; 
value2[1]=6; 
weight[1]=5; 

value1[2]=2; 
value2[2]=4; 
weight[2]=4; 

... etc ... 

這是你在找什麼?

+0

我將這樣的數組存儲爲:int val1 [] = {0,1, 3,3,5,5,8}; int val2 [] = {0,6,4,3,2,7,5};現在我想在VAL1值和值VAL2比較,我想這個算法,但它不能很好地工作:爲(INT J = 0;Ĵ<= LEN1; J ++) \t \t { \t \t \t爲( INT K = 0; k <= LEN2; k ++) \t \t \t { \t \t \t \t如果(VAL1 [J]> = VAL1 [J + 1] && val2的[K]> = val2的[K + 1]) \t \t \t \t { \t \t \t \t \t System.out.println(「Value1 =」+ val1 [j] +「Value2 =」+ val2 [k]); \t \t \t \t} \t \t \t} \t \t} –

+0

當你說你正在試圖比較VAL1的val2 ...您的示例代碼val1的val2中每個條目中的每個條目,即7×7 = 49相匹配匹配,但不會將val1與val2進行比較,而是將每個val1條目與以下val1條目進行比較,並將每個val2條目與以下val2條目進行比較。順便說一下,如果len1是val1中條目的數量,這將不起作用,因爲您運行j到len1,但val1中的最後一個條目是len1-1。通常,通過數組的循環應該是for(int j = 0; j Jay

+0

... j必須停在最後一個條目處,否則您將嘗試將最後一個條目與最後一個條目比較,當然也沒有「最後的輸入」。但真正的問題在於,當你說你想比較val1和val2時,你的意思是什麼?你只是想檢查是否val1 [0] == val2 [0],val1 [1] == val2 [1]等?還是比較更復雜? – Jay

相關問題