2016-12-09 1 views
-4
public static void main(String[] args) { 
     int ROW = 10; 
     int COLUMN = 2; 
     final int RANK = 0; 
     final int COST = 1; 
     double[][] Example = { 
       {2, 5.60},{6, 76.00},{1,2.30},{4,22.00},{7,13.40},{5,102.00} 
       ,{10,34.00},{9,9.99},{3,1.00},{8,15.00}; 
    double[] tempData; 
    int swapCounter = 1; 
    int comparisons = (Example.length); 



    for (int zz = 0; (zz < Example.length) && (swapCounter > 0) ; zz++) 
    { 
     swapCounter = 0; 
     comparisons--; 
     //comparisons 
     for (int index = 0; index < comparisons ; index++) 
     { 

      if (Example[index][COST] < Example[index+1][COST] && 
        (Example[index][RANK] > Example[index+1][RANK] 
        || Example[index][RANK] == Example[index+1][RANK])) 
      { 
       // Sorting Matrix 
       tempData = Exmaple[index]; 
       Example[index] = Example[index+1]; 
       EXample[index+1] = tempData; 


       swapCounter++; 
      } 
     } 
    } 

Wie würde ich Blase Art diese Matrix die RANK (Integer) in aufsteigender Reihenfolge haben und die Kosten (floating pt ganzen Zahlen) in absteigender Reihenfolge auf dem gleichen bestellt werden Zeit.Blase Sortieren eine Matrix in Java durch aufsteigende und absteigende Sortierung

Mein Ziel ist es, eine Tabelle dieser Elemente auszudrucken, in aufsteigender Reihenfolge und in absteigender Reihenfolge.

Keine Hilfe zum Drucken, nur Sortieren.

+1

Ich wähle diese Frage als off- schließen Thema, weil es sehr wie eine Hausaufgabe Dump aussieht. –

+1

Durch die Implementierung des Bubble Sort-Algorithmus. – Mark

+0

Warum die Blase sortieren? –

Antwort

0

Ihr Test sucht wierd:

 if (Example[index][COST] < Example[index+1][COST] && 
       (Example[index][RANK] > Example[index+1][RANK] 
       || Example[index][RANK] == Example[index+1][RANK])) 

Es ist äquivalent zu:

 if (Example[index][COST] < Example[index+1][COST] && 
       Example[index][RANK] >= Example[index+1][RANK]) 

Aber vielleicht Sie gemeint:

 if (Example[index][RANK] > Example[index+1][RANK] 
       || Example[index][RANK] == Example[index+1][RANK] 
       && Example[index][COST] < Example[index+1][COST]) 
Verwandte Themen