Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Метод Шелла - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ ошибка при компиляции http://www.cyberforum.ru/cpp-beginners/thread144291.html
при компиляции программы выскакивает такая ошибка 1>.\Debug\?@>3@0<<0 @01>BK A> A?8A:0<8(AB5:).exe.intermediate.manifest : general error c1010070: Failed to load and parse the manifest. 5...
C++ Плащадь кольца Помогите решить задачу. НАйти площадь кольца, врутренний радиус = r1, врешний радиус = r2. (r1<r2) Вот что получилось #include <iostream.h> #include<math.h> void main () {double S,P; int... http://www.cyberforum.ru/cpp-beginners/thread144278.html
C++ Непонятное задание
Помогите пожалуйста решить задачу. Я просто не пойму что мне нужно сделать. Дана декртова система координат. по центру чистый круг, а за кругом все заштриховано. Присвоить z = 1, если точка...
C++ Последовательность
Помогите пожалуйста рещить задачу. Вычислисть последовательность значений для функции y=(3*pow(x,2)-2)\4 для х=0; 0,05; 0,10; 0,15; … ; 10,0. Заранее спасибо.
C++ про времена года http://www.cyberforum.ru/cpp-beginners/thread144251.html
РЕбят п0могите решить, то я не разберусь. ЗАдание: по введенному номеру месяца определить пору года. НУ у меня чтото не получается . Вот кусочек, это я написал только про 1 месяц. #include...
C++ Двумерный массив: целочисленная квадратная матрица Данная целочисленные квадратная матрица. Вычислить: 1) сумму элементов в тех строках, которые не содержат отрицательных элементов 2) минимум среди сумм элементов диагоналей, параллельных главной... подробнее

Показать сообщение отдельно
CyBOSSeR
Эксперт C++
2302 / 1672 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
11.06.2010, 17:12
DanielDefo, тема обсуждалась не раз, пользуйтесь поиском по форуму.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// Функция сортировки Шелла целочисленного массива 
// Аргументы:
// arr - сортируемый массив
// size - размер сортируемого массива
void SortShell(int* arr, int size) {
  int step = size / 2;
 
  while (step != 0) {
    // Сортируем группы элементов отстоящих друг от друга на значение шага вставками
    for (int i = step; i < size; ++i) {
      int tmp = arr[i];
      int j;
 
      for (j = i - step; j >= 0 && arr[j] > tmp; j -= step)
        arr[j + step] = arr[j];
 
      arr[j + step] = tmp;
    }    
    step /= 2;
  }
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru