кодесурса

Упражнения по массиву Java: разделение четных и нечетных чисел заданного массива целых чисел

script1adsense2code
script1adsense3code

Java Array: упражнение 52 с решением

Напишите Java-программу для разделения четных и нечетных чисел заданного массива целых чисел. Сначала ставьте все четные числа, а затем нечетные.

Иллюстрированная презентация:


Пример решения :

Java-код:

import java.util.Arrays;
public class Main
{
	
	 public static void main (String[] args)
     {
        int nums[] = {20, 12, 23, 17, 7, 8, 10, 2, 1, 0};
        int result[];
        System.out.println("Original Array ");
        System.out.println(Arrays.toString(nums));
        result = separate_odd_even(nums);
 
        System.out.print("Array after separation ");
        System.out.println(Arrays.toString(result));
    }
	
    static int [] separate_odd_even(int arr[])
    {
        int left_side = 0, right_side = arr.length - 1;
        while (left_side < right_side)
        {
            while (arr[left_side]%2 == 0 && left_side < right_side)
                left_side++;
 
            while (arr[right_side]%2 == 1 && left_side < right_side)
                right_side--;
 
            if (left_side < right_side)
            {
                int temp = arr[left_side];
                arr[left_side] = arr[right_side];
                arr[right_side] = temp;
                left_side++;
                right_side--;
            }
        }
        return arr;
    }
}

Пример вывода:

                                                                              
Оригинальный массив 
[20, 12, 23, 17, 7, 8, 10, 2, 1, 0]
Массив после разделения [20, 12, 0, 2, 10, 8, 7, 17, 1, 23]

Блок - схема:

«Блок-схема:

Визуализация выполнения кода Java (Python Tutor):


Редактор кода Java:

Улучшите этот пример решения и опубликуйте свой код через Disqus

Предыдущий: Напишите Java-программу для разделения 0 в левой части и 1 в правой части массива из 0 и 1 в случайном порядке.
Далее: Напишите программу на Java, чтобы заменить каждый элемент следующим наибольшим элементом (справа) в заданном массиве целых чисел.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code