JavaRush /Java блог /Архив info.javarush /Кухня(); Задание N23.
terranum
28 уровень
Milan

Кухня(); Задание N23.

Статья из группы Архив info.javarush
Кухня(); Задание N23. - 1 Правила [Одномерные массивы] 23. Последовательность a1, a2, ..., аn состоит из нулей и единиц. Поставить в начало этой последовательности нули, а затем единицы.
Комментарии (33)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
RabenokDmitry Уровень 21
12 февраля 2015
public static void sortOneZero(int[] array) {
        for (int value : array) {
            if ((value > 1) || (value < 0)) {
                throw new IllegalArgumentException("Неверный массив данных!");
            }
        }
        for (int i = 0; i < array.length; i++)
            if (array[i] == 1) {
                for (int j = array.length - 1; j > i; j--) {
                    if (array[j] == 0) {
                        array[j] = 1;
                        array[i] = 0;
                    }
                }
            }
    }
Sultan Уровень 16
28 августа 2014
Сядьте, сделайте глубокий вдох и:
public static String zerosToFront(String binaryString) {
    return new String(new char[binaryString.replace("1", "").length()]).replace('\0', '0')
            + new String(new char[binaryString.replace("0", "").length()]).replace('\0', '1');
}
Sultan Уровень 16
27 августа 2014
Пока так:
public static String zerosToFront(String binaryString) {
    char[] temp = binaryString.toCharArray();
    Arrays.sort(temp);
    return new String(temp);
}

Печалька в том, что Arrays.sort() возвращает void, а не ссылку на сортируемый массив.
Docktor91 Уровень 40
27 августа 2014
public static int[] anyName(int... n)
{
    int[] res = new int[n.length];
    int count = 0;
    for (int i = 0; i < n.length; i++)
    {
        if (n[i] == 1)
        {
            res[n.length - 1 - count++] = 1;
        }
    }
    return res;
}
dimaMJ Уровень 25
27 августа 2014
Нет ну можно еще так )
public static int[] func(int[] mas)
    {
        for (int i =0;i<mas.length-1;i++)
        {
            for(int j=0;j<mas.length-i-1;j++)
            {
                if (mas[j]>mas[j+1])
                {
                    mas[j]+= mas[j+1];
                    mas[j+1]=mas[j]-mas[j+1];
                    mas[j]-=mas[j+1];
                }
            }
        }
        return mas;
    }
dimaMJ Уровень 25
27 августа 2014
Arrays.sort(mas);

:D
Sultan Уровень 16
27 августа 2014
я подумал, не успел, а как это, без читерства? Или что имеешь ввиду под читерством? Из сети брать или использовать нетривиальные способы решения?
terranum Уровень 28
27 августа 2014
Или дайте дорогу молодежи)
terranum Уровень 28
27 августа 2014
Давайте только без читерства)