Массивы в C++


Отсортированная часть массива также формируется путем последовательного добавления в нее элементов из его неотсортированной части



бет5/6
Дата08.10.2024
өлшемі2.27 Mb.
#504457
түріЛекция
1   2   3   4   5   6

Отсортированная часть массива также формируется путем последовательного добавления в нее элементов из его неотсортированной части

  • Отсортированная часть массива также формируется путем последовательного добавления в нее элементов из его неотсортированной части
  • Однако теперь в качестве очередного берется первый элемент неотсортированной части
  • Место его размещения в отсортированной части выбирается так, чтобы сохранить уже имеющийся там порядок сортировки
  • -14
  • 3
  • 27
  • 19
  • -2
  • 24
  • -38
  • 1
  • 6

const int N = 10;

          • const int N = 10;
          • void main()
          • { int i, j, nMin, A[N], c;
          • // здесь нужно ввести массив A
          • for ( i = 1; i < N; i ++ )
          • { c = A[i];
          • j = i -1; // ищем в отсортированной части место для размещения
          • while (j > =0 && A[j] > c) A[j+1] = A[j--]; // очередного злемента
          • A[j+1] = c;
          • }
          • printf("\n Отсортированный массив:\n");
          • for ( i = 0; i < N; i ++ )
          • printf("%d ", A[i]);
          • }

Этот метод сортировки имеет жаргонное наименование «метод пузырька» и заключается в многократном упорядочении пар соседних элементов

  • Этот метод сортировки имеет жаргонное наименование «метод пузырька» и заключается в многократном упорядочении пар соседних элементов

const int N = 10;

        • const int N = 10;
        • void main()
        • {
        • int i, j, A[N], c;
        • // здесь надо ввести массив A
        • for ( i = 0; i < N-1; i ++ ) // цикл повторных проходов по массиву
        • for ( j = N-2; j >= i; j -- ) // идем с конца массива в начало
        • if ( A[j] > A[j+1] ) // если они стоят неправильно, ...
        • {
        • c = A[j]; A[j] = A[j+1]; A[j+1] = c; // переставить A[j] и A[j+1]
        • }
        • printf("\n Отсортированный массив:\n");
        • for ( i = 0; i < N; i ++ ) printf("%d ", A[i]);
        • }


Достарыңызбен бөлісу:
1   2   3   4   5   6




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет