Как отсортировать только четные элементы массива
Перейти к содержимому

Как отсортировать только четные элементы массива

  • автор:

Метод filter для фильтрации массива в JavaScript

Дан массив с числами. Оставьте в нем только положительные числа.

Дан массив с числами. Оставьте в нем только отрицательные числа.

Дан массив с числами. Оставьте в нем только числа, которые больше нуля, но меньше 10 .

Дан массив со строками. Оставьте в нем только те строки, длина которых больше 5 -ти символов.

Дан массив с числами. Оставьте в нем только те числа, произведение которых на их порядковый номер меньше 30 .

Дан массив, в нем могут быть обычные элементы и подмассивы, например [1, 2 , [3, 4], 5 , [6, 7]]. Оставьте в нем только обычные элементы.

Сортировка четных элементов массива в Java

Всем привет! В данный момент я решаю такую задачу:нужно реализовать публичный статический метод getSameParity(), который принимает на вход массив чисел и возвращает новый, состоящий из элементов, у которых такая же чётность, как и у первого элемента входного массива. Если на вход был передан пустой массив, метод возвращает также пустой массив. Пример работы программы:

int[] numbers1 = <>; App.getSameParity(numbers1); // [] int[] numbers2 = ; App.getSameParity(numbers2); // [1, 3] int[] numbers3 = ; App.getSameParity(numbers3); // [1] int[] numbers4 = ; App.getSameParity(numbers4); // [2, 2, 8] int[] numbers5 = ; App.getSameParity(numbers5); // [-3, 1] 

Уточнение к задаче: Проверку чётности следует выполнять, используя остаток от деления на 2: item % 2 == 0 В массиве могут находится отрицательные числа. Для работы с ними использовать метод нахождения модуля Math.abs()

 Math.abs(-1); // 1 Math.abs(1); // 1 Math.abs(0); // 0 

Так как мы не знаем заранее, какое количество элементов будет в новом массиве, можно изначально создать массив с «запасом», а затем отрезать лишнее. Для этого может понадобиться метод Arrays.copyOfRange(), который принимает на вход массив чисел и возвращает часть его элементов в виде нового массива:

int[] numbers = ; // получаем элементы с 1-го индекса включительно по 4-й не включительно var range = Arrays.copyOfRange(numbers, 0, 4); System.out.println(Arrays.toString(range)); // => [3, 7, 8, 9] 

Мое решение:

 package com.arrays.problem6; import java.util.Arrays; public class App < public static void main(String[] args) < >public static Integer getSameParity(int[] numbers) < int i = 0, j = numbers.length - 1; if(Math.abs(numbers[i]%2)!= Math.abs(numbers[j])% 2) < i++; if(Math.abs(numbers[i])% 2 == Math.abs(numbers[j])% 2) < return numbers[i-1]; >j--; if(Math.abs(numbers[i])%2 == Math.abs(numbers[j])%2) < return numbers[j+1]; >> while(i < j) < if(Math.abs(numbers[i])%2 != Math.abs(numbers[j])%2) < if(Math.abs(numbers[i])%2 == Math.abs(numbers[0])%2) < return numbers[j]; >else < return numbers[i]; >> i++; j--; > int[] range=Arrays.copyOfRange(numbers,0,4); System.out.println(Arrays.toString(range)); return numbers[i]; > > 

Программа не работает, хотя подозреваю,что я близок к правильному решению.Помогите мне пожалуйста решить эту задачу.

Сортировка чётных и нечётных элементов массива.

Доработаем этот проект по Вашим требованиям, напишите подробности нам в Телеграм

Сортировка чётных и нечётных элементов массива.

Сортировка чётных и нечётных элементов массива.

Сортировка чётных и нечётных элементов массива.

Сортировка чётных и нечётных элементов массива.

1. Постановка задачи

Напишите программу сортировки элементов массива (любым методом) так, чтобы все чётные элементы оказались в левой части массива, а все нечётные – в правой.

2. Исходные данные

В качестве исходных данных пользователь должен ввести данные из консоли или выбрать режим работы с файлами.

3. Особые ситуации

  • Чтение массива из файлаl;
  • Имя файла не должно содержать кириллицы;
  • Размерность массива должна быть больше 1;
  • Соотношение количества чётных и нечётных элементов не влияет на работу программы.
  • Нельзя использовать файлы с расширениями и именами: con, prn, aux, nul, com1, com2, com3, com4, com5, com6, com7, com8, com9, lpt1, lpt2, lpt3, lpt4, lpt5, lpt6, lpt7, lpt8, lpt

4. Математические методы и алгоритмы решения задач

Использовалась сортировка пузырьковым методом.

Swap происходил в том случае, если элемент был нечётным, а последующий за ним чётным.

5. Форматы представления данных

Программа использует следующие переменные:

Таблица 1 – Основные переменные, используемы в программе

Как отсортировать только четные элементы массива

Сообщений: 6

Матрица будет заполняться рандомными числами. Вот код,где мы заполняем матрицу, выводим исходную матрицу,а потом и конечную.Между ними и должна находится сортировка.

#include "stdafx.h" #include #include #include #define n 6 int main() < int Array[n][n]; //Filling the array srand(time(NULL)); for (int i=0;i> printf ("Source array : \n"); for (int i=0;i > printf("\n\n"); //Sort //Output printf("\n\nOutput array : \n"); for (int i=0;i > getchar(); return 0; >

Последний раз редактировалось Stilet; 11.11.2015 в 15:47 .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *