Форум программистов, компьютерный форум, киберфорум
Java для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 17.04.2015
Сообщений: 3
1

Сортировка строчного массива

10.09.2015, 13:13. Просмотров 1287. Ответов 5
Метки нет (Все метки)

Здравствуйте!
Массив содержит красные, зеленые и синие шары в произвольном порядке. Нужен метод, который переставит шары, сначала красные потом зеленые и в конце синии.
Заранее спасибо!
Java
1
2
3
4
5
6
7
8
9
10
public class ColorSort {
 
   enum Color {red, green, blue};
   
   public static void main (String[] param) {
   }
   
   public static void reorder (Color[] balls) {
   }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.09.2015, 13:13
Ответы с готовыми решениями:

Разбивка строчного массива
Добрый день. Имеется в наличии массив string * arr=new string Внутри него находится...

Инициализация строчного массива вручную
Приветствую. Есть код: #include "stdafx.h" #include <locale> #include <iostream> int main()...

Вывод из формы HTML строчного массива
HTML (фрагмент) <div id="block_02"> Выберете режисёра<br><br> select name="producer"...

Чтение строчного массива с текстового файла
Здравствуйте. Мне нужно написать программу, которая считывает цифры с текстового документа...

5
0 / 0 / 0
Регистрация: 08.09.2015
Сообщений: 5
10.09.2015, 13:26 2
Воспользуйся Arrays.sort()
0
2876 / 2288 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
10.09.2015, 13:34 3
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
public class ColorSort {
    enum Color {red, green, blue}
 
    public static void main(String[] param) {
        Color[] balls = new Color[10];
        initArray(balls);
        System.out.println(Arrays.toString(balls));
        reorder(balls);
        System.out.println(Arrays.toString(balls));
    }
 
    public static void initArray(Color[] balls) {
        Random r = new Random();
        for (int i = 0; i < balls.length; i++) {
            switch (r.nextInt(3)) {
                case 0:
                    balls[i] = Color.red;
                    break;
                case 1:
                    balls[i] = Color.green;
                    break;
                case 2:
                    balls[i] = Color.blue;
                    break;
            }
        }
    }
 
    public static void reorder(Color[] balls) {
        Arrays.sort(balls);
    }
}
[blue, red, red, green, red, blue, blue, red, red, blue]
[red, red, red, red, red, green, blue, blue, blue, blue]
2
0 / 0 / 0
Регистрация: 17.04.2015
Сообщений: 3
10.09.2015, 13:58  [ТС] 4
Прокомментируйте код, пожалуйста
0
0 / 0 / 0
Регистрация: 01.06.2015
Сообщений: 5
14.09.2015, 04:22 5
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
enum Color {red, green, blue} /* Ограничиваем переменную значениями red, green, blue */
 
Color[] balls = new Color[10]; /* Создаем массив balls из десяти переменных типа Color */
 
Random r = new Random();
        for (int i = 0; i < balls.length; i++) {
            switch (r.nextInt(3)) {
                case 0:
                    balls[i] = Color.red;
                    break;
                case 1:
                    balls[i] = Color.green;
                    break;
                case 2:
                    balls[i] = Color.blue;
                    break;
            }
        }
/* Пробегаемся по массиву и раздаем значения рандомом (red green or blue) */
 
Arrays.sort(balls); /* Сортируем массив */
 
System.out.println(Arrays.toString(balls)); /* Выводим массив */
0
1533 / 1216 / 302
Регистрация: 17.02.2014
Сообщений: 6,554
14.09.2015, 13:05 6
Еще можно так:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 static enum Color {red, green, blue}
    
    static String [] colorBall = {"blue", "blue", "red", "red", "green", "green", "green", "blue", "green", "red"};
    
    public static void main(String[] args)  {
        String [] balls = new String[colorBall.length];
        int j = 0;
       
        for(Color c: Color.values()) {
            for(int i =0; i < colorBall.length; i++)
                if(colorBall[i].equals(c.name()))
                    balls[j++] = c.name();
        }
        
        for(String ss: balls)
            System.out.print(ss + ',');
    }
Bash
1
red,red,red,green,green,green,green,blue,blue,blue,
Все ваши "камни" за нарушения принципа Оккамы будут справедливы
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.09.2015, 13:05

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

как найти первый и последний символы строки строчного массива?
как найти первый и последний символы строки строчного массива? :- #include &lt;fcntl.h&gt; #include...

Строчного калькулятор
Нужна помощь с созданием строчного калькулятора (ввод в строку чисел и мат.знаков).

Позиционирование строчного элемента
Здравствуйте! Если внутри блока есть элементы которые нужно спозиционировать/расставить отступы...

Реализация строчного калькулятора
Подскажите, пожалуйста, как реализовать &quot;Строчный калькулятор&quot;, а именно в edit ввожу 2*2 или 2/2 и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.