2017-05-04 77 views
-3

我有數組元素的列表的我需要打印在例如我的數組元素是一種特定的方式打印數據

[1,2,3,4,5的elemt ,6]和我需要使這個數組成爲[1,6,2,5,3,4]是學生和編程世界的初學者,排序是一種替代方式,我如何在java的

謝謝

+0

Store中的第1個要素(從零開始的索引)到一個變量,然後用5個元素覆蓋第1個要素,然後用你的變量的內容覆蓋第五個元素。看起來你有很多東西需要學習,並且stackoverflow並不是這個級別的最佳資源。 – Aaron

+0

你能提供一個片段嗎? –

+0

你到目前爲止嘗試過什麼?目前還不清楚你是否只是按照這個順序打印它,或者重新排列數組中的元素,甚至是創建一個新的數組並將它們排列在其中,但是我可以給你一個提示,嘗試一下,然後發佈一些代碼在這裏,我們可以幫助你,提示是,使用2個指針(索引)ex,'int head = 0'' int tail = array.length-1',你可以做一個while(head Yazan

回答

0

我不知道這是否一個完美的方式,但如果你按照片段即可達到所需的結果,在這裏,我做了一個startIndex和endIndex的變量,並基於偶數或奇數尺寸的ArrayList,你能理解,當你經過片斷

Integer[]myCurrentData={1,2,3,4,5,6}; 

    int startIndex = 0, endIndex = myCurrentData.length; 

    ArrayList<Integer> rearrangedData = new ArrayList<>(); 

    //Let add a for loop for this example >You can change asper your requirement 
     for(int i=0;i<myCurrentData.length;i++) 
      {  
      if (rearrangedData.size() % 2 == 0) //if even number add start index 
       { 

        rearrangedData.add(myCurrentData[startIndex]); 

        startIndex++; 

       } else { 
         endIndex--; 

         rearrangedData.add(myCurrentData[endIndex]); 


       } 
      } 
//Just to print the data 
    String printString="["; 
    for(int i=0;i<rearrangedData.size();i++) 
    { 
     printString=printString+rearrangedData.get(i)+","; 
    } 
    printString=printString+"]"; 
    System.out.println("Rearranged Data"+printString); 

希望這將幫助你:)

0

希望這會幫助你,請注意inputmannar具有相同的尺寸。

ArrayList<String> input = new ArrayList(Arrays.asList("This", "is", "a", "sample", "array")); 
ArrayList<Integer> mannarArray = new ArrayList(Arrays.asList(1, 2, 5, 3, 4)); 
for (int index = 0; index < mannarArray.size(); index ++) { 
    System.out.println(input.get(mannarArray.get(index) - 1)); 
}