Есть ответ 👍

Осуществить сортировку заданного массива двумя методами: адресная сортировка и сортировка вставками
Определить количество проходов по массиву, количество сравнений и количество перестановок элементов массива. C++

200
419
Посмотреть ответы 2

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


Адресная сортировка

#include <iostream>

int main()

{

   int value = 8;

   int *ptr = &value;

   std::cout << ptr << '\n';

   std::cout << ptr+1 << '\n';

   std::cout << ptr+2 << '\n';

   std::cout << ptr+3 << '\n';

   return 0;

}

Сортировка вставками

#include <iostream>

using namespace std;

int main()

{

const int N = 10;

int a[N] = { 12, 5, 3, 2, 45, 96, 6, 8, 11, 24 };

int buff = 0; // для хранения перемещаемого значения

int i, j;  // для циклов  

/ Начало сортировки /

for (i = 1; i < N; i++)

{

 buff = a[i]; // запомним обрабатываемый элемент

 // и начнем перемещение элементов слева от него

 // пока запомненный не окажется меньше чем перемещаемый

 for (j = i - 1; j >= 0 && a[j] > buff; j--)

    a[j + 1] = a[j];

 a[j + 1] = buff; // и поставим запомненный на его новое место

}

/ Конец сортировки /

for (int i = 0; i < N; i++) // вывод отсортированного массива

 cout << a[i] << '\t';

cout << endl;

}

Думаю :)

Бота157
4,7(64 оценок)

Ахаха что. Не понимаю.

Популярно: Информатика