Java 在不使用现有算法或排序技术的情况下对整型元素进行排序

Java 在不使用现有算法或排序技术的情况下对整型元素进行排序,java,c,Java,C,如果我在数组中有1个核心整数元素,在随机方式中只有0,1我想在不使用现有算法的情况下对该数组进行排序。或排序方法,并使用最小迭代 我怎么能那样做。。 请帮助我。方法1:计算所有0,然后从前面设置,然后设置1的大小-计数(0)次。 方法2:从阵列的两端开始,从左到右交换1到0,直到到达阵列的中间 while (begin < end) { // If find 0 at left, keep moving if (0 == toSort[begin]) {

如果我在数组中有1个核心整数元素,在随机方式中只有0,1我想在不使用现有算法的情况下对该数组进行排序。或排序方法,并使用最小迭代

我怎么能那样做。。
请帮助我。

方法1:计算所有0,然后从前面设置,然后设置1的大小-计数(0)次。

方法2:从阵列的两端开始,从左到右交换1到0,直到到达阵列的中间

while (begin < end) {
      // If find 0 at left, keep moving
      if (0 == toSort[begin]) {
        begin++;

      }
      // if a 1 occurs at left, move from right until find a zero
      else if (1 == toSort[end]) {
        end--;
      }
      // Here we found a 1 at left and 0 at right, so swap
      else {
        toSort[begin] = 0;
        toSort[end] = 1;
      }
    }
while(开始<结束){
//如果在左侧找到0,请继续移动
如果(0==toSort[begin]){
begin++;
}
//如果1出现在左侧,则从右侧移动直到找到零
else if(1==toSort[end]){
结束--;
}
//在这里,我们发现1在左边,0在右边,所以交换
否则{
toSort[begin]=0;
toSort[end]=1;
}
}

时间复杂度:O(n)。

也许你可以计算0和1的数量,然后创建一个新的数组,使用相同数量的0和1,但选择添加它们的顺序。

我不理解“1核心整数元素”。你能澄清一下吗?我想在不使用现有算法的情况下对这个数组进行排序:不使用算法似乎很困难,或者请告诉我们什么是适合你的算法。@pbabcdefp,我猜是“1百万整数元素”@CoolGuy谢谢。我以前从来没听说过crore这个词。你的问题不太清楚。我假设您有一个整数数组,每个整数是0或1,没有其他数据。要“排序”,只需计算数组中0和1的数量,例如N个0和M个1。然后通过写出N个零和M个一来覆盖数组(反之亦然,取决于您是想按升序还是降序“排序”)。这是一个O(n)算法:一次通过计数,一次通过重写。