Вопрос задан 15.06.2023 в 22:20. Предмет Информатика. Спрашивает Bondarenko Aleksandra.

Дан массив в=[-2,4,10,-1,1,6,3,7,8,5]. Выполните сортировку методом прямого выбора. Удалите из

массива не четные числа.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Волкович Тёма.

#include <iostream>

#include <vector>

using namespace std;

void insertionSort(vector<int> &a_){

   vector<int> t;

   int n = a_.size();

   for(int i = 0; i < n; i++){

       int u = i;

       for(int j = i + 1; j < n; j++)

           if(a_[j] < a_[u])

               u = j;

       swap(a_[i], a_[u]);

       if(!(a_[i] & 1))

           t.push_back(a_[i]);

   }

   a_ = t;

}

void solve(){

   vector<int> a = {-2, 4, 10, -1, 1, 6, 3, 7, 8, 5};

   insertionSort(a);

   cout << "a = {";

   for(int i = 0; i < a.size() - 1; i++)

       cout << a[i] << ", ";

   cout << a.back() << "}";

}

int main(){

   solve();

}

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Я могу помочь вам с вашим запросом.

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

Для удаления нечетных чисел из массива мы можем использовать фильтрацию или цикл. Фильтрация позволяет создать новый массив, содержащий только те элементы, которые удовлетворяют заданному условию. Цикл позволяет пройтись по всем элементам исходного массива и удалить те, которые не подходят.

Вот пример кода на языке Python, который реализует оба этих метода:

```python # Дан массив v v = [-2, 4, 10, -1, 1, 6, 3, 7, 8, 5]

# Сортировка методом прямого выбора n = len(v) # длина массива for i in range(n): # для каждого индекса i от 0 до n-1 min_index = i # предполагаем, что i-й элемент - наименьший for j in range(i+1, n): # для каждого индекса j от i+1 до n-1 if v[j] < v[min_index]: # если j-й элемент меньше минимального min_index = j # обновляем индекс минимального элемента # меняем местами i-й и минимальный элементы v[i], v[min_index] = v[min_index], v[i]

# Удаление нечетных чисел из массива

# Метод 1: фильтрация # создаем новый массив w, содержащий только четные элементы из v w = list(filter(lambda x: x % 2 == 0, v))

# Метод 2: цикл # создаем пустой список w w = [] for x in v: # для каждого элемента x в массиве v if x % 2 == 0: # если x четный w.append(x) # добавляем x в список w

# Выводим результаты print("Отсортированный массив v:", v) print("Массив w, содержащий только четные элементы из v:", w) ```

Надеюсь, это было полезно. Если у вас есть еще вопросы, я рад помочь.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос