int[] array = {1,1,0,1,2,2,0,0};
int firstNumber = 1;// dynamic can be 0 or 1 or 2
int numberOfOccurances = 0;
//Basic sort functionality
for(int i = 0 ; i< array.length; ++i)
{
if(array[i] == firstNumber)
{
numberOfOccurances++;
}
for(int j = i+1; j<array.length; ++j)
{
if(array[j] < array[i])
{
int temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}
}
int[] requiredArray= new int[array.length];
for(int i = array.length-1 ; i >= 0; i--)
{
if(array[i] != firstNumber)
requiredArray[i] = array[i];
}
for(int i =0;i<array.length;i++)
{
if(i<numberOfOccurances)
requiredArray[i]= firstNumber;
}
//Print Output
for (int i = 0; i<requiredArray.length; i++)
System.out.print(requiredArray[i] + " ");
輸出:1 1 1 1 0 0 2 2排序陣列(第一數量將被動態地選擇和剩餘陣列應該被排序升序)
我是能夠得到所希望的輸出,但我米不知道這是否是解決我的問題的最佳方法?
問題是? – svs
@svs我想知道是否有更好的方法來解決它。 – Rajesh
不完全確定,但在http://codereview.stackexchange.com/上提出這個問題不是更好嗎? –