ВУЗ:
Составители:
Рубрика:
Андрианова А.А., Исмагилов Л.Н., Мухтарова Т.М.
// j – индекс просмотра массива с конца
int i = 0, j = n - 1;
// selected – элемент, относительно которого
// разделяется массив
T selected = m[0], temp;
// цикл разделения массива на две части
// относительно элемента selected
while(i != j)
{
// поиск с конца элемента меньшего,
// чем элемент selected
while(m[j] >= selected && j > i)
j--;
// если элемент найден
if(j > i)
{
m[i] = m[j];
// поиск с начала элемента большего,
// чем элемент selected
while(m[i] <= selected && i < j)
i++;
m[j] = m[i];
}
}
// помещаем выбранный элемент в нужную позицию
m[i] = selected;
// сортируем две части массива по отдельности
QuickSort(m, i);
QuickSort(m + i + 1, n – i - 1);
}
Домашнее задание
1. Написать шаблон функции поиска местоположения элемента в
массиве. Тип элементов массива может быть произвольным.
2. Написать шаблон функции проверки симметричности массива.
Тип элементов массива может быть произвольным.
3. Написать шаблон функции проверки того, что массив образует
возрастающую последовательность. Тип элементов массива
может быть произвольным.
4. Написать шаблон функции поиска максимального и
минимального элементов массива. Тип элементов массива может
быть произвольным.
26
Андрианова А.А., Исмагилов Л.Н., Мухтарова Т.М.
// j – индекс просмотра массива с конца
int i = 0, j = n - 1;
// selected – элемент, относительно которого
// разделяется массив
T selected = m[0], temp;
// цикл разделения массива на две части
// относительно элемента selected
while(i != j)
{
// поиск с конца элемента меньшего,
// чем элемент selected
while(m[j] >= selected && j > i)
j--;
// если элемент найден
if(j > i)
{
m[i] = m[j];
// поиск с начала элемента большего,
// чем элемент selected
while(m[i] <= selected && i < j)
i++;
m[j] = m[i];
}
}
// помещаем выбранный элемент в нужную позицию
m[i] = selected;
// сортируем две части массива по отдельности
QuickSort(m, i);
QuickSort(m + i + 1, n – i - 1);
}
Домашнее задание
1. Написать шаблон функции поиска местоположения элемента в
массиве. Тип элементов массива может быть произвольным.
2. Написать шаблон функции проверки симметричности массива.
Тип элементов массива может быть произвольным.
3. Написать шаблон функции проверки того, что массив образует
возрастающую последовательность. Тип элементов массива
может быть произвольным.
4. Написать шаблон функции поиска максимального и
минимального элементов массива. Тип элементов массива может
быть произвольным.
26
Страницы
- « первая
- ‹ предыдущая
- …
- 24
- 25
- 26
- 27
- 28
- …
- следующая ›
- последняя »
