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

C/C++ FAQ :: Быстрая сортировка (сортировка Хоара) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вывести матрицу с файла http://www.cyberforum.ru/cpp-beginners/thread315551.html
не могу понять в чем проблема, файл с матрицей создан, директория правильная. Прошу проверить. #include <dos.h> #include <conio.h> #include <stdio.h> #include <stdlib.h> #include <iostream.h> void main () {clrscr ();
C++ Словарь-Переводчик. вывод в textBox Вроде всё компилируется нормально, но выводить не хочет, помогите разобраться в чём ошибка, заранее благодарен! Проект прикреплён к сообщению http://www.cyberforum.ru/cpp-beginners/thread315543.html
C++ Реализация Функции Эйлера
Доброго времени суток,уважаемые форумчане! Помогите пожалуйста мне с такой проблемой (да,я видел тут похожие темы,но они мне не помогли). Мне нужно реализовать программу,которая выводит значение функции Эйлера для числа,которое задано своим разложением на простые множители p1....pn.Проблема в том,что простые множители могут повторяться,т.е. пользователь с клавиатуры вводит их,например 2,3,3.Вот...
Сортировка C++
Ребята помогите написать программку на С/С++. Дана прямоугольная матрица . Отсортировать строки, индекс которых кратен числу а (вводимому с клавиатуры), по убыванию. Для остальных найти среднее значение.
C++ класс треугольник http://www.cyberforum.ru/cpp-beginners/thread315527.html
Доброй ночи.Помогите,пожалуйста написать программу. Создать класс треугольник, члены класса - координаты 3-х точек. Предусмотреть в классе методы проверки существования треугольника,вычисления и вывода сведений о фигуре – длины сторон, углы, периметр,площадь. Создать производный класс – равноcторонний треугольник,предусмотреть в классе проверку, является ли треугольник равносторонним.Написать...
C++ В конструкторе вложенного класса инициализируется приватное поле. Потом вызывается функция-метод этого класса и выводит значение этого поля НО НЕ ТО! Друзья! Почему так? #include <windows.h> #include <iostream> using namespace std; //Вот главный класс class A{ private: подробнее

Показать сообщение отдельно
voral
345 / 325 / 46
Регистрация: 16.03.2008
Сообщений: 1,694
08.06.2011, 02:10     C/C++ FAQ :: Быстрая сортировка (сортировка Хоара)
Вопрос, скорее академический, по мотивам реализации.
Вот в faq приведена реализация этого метода сортировки на C++. В коде есть следующий фрагмент:
C++
1
2
3
4
5
6
7
8
9
do {
    while ( a[i] < p ) i++;
    while ( a[j] > p ) j--;
 
    if (i <= j) {
      temp = a[i]; a[i] = a[j]; a[j] = temp;
      i++; j--;
    }
  } while ( i<=j );
Т.е. у нас бывает ситуация когда i=j ( я так понимаю - как раз центральный элемент). При этом мы так же прогоняем через temp.
Т.е. три лишних операции присвоения. Ускорится ли выполнение (понимаю что разница мала, но все же если немного изменить)
C++
1
2
3
4
5
if (i <= j)
    {
      if (i < j) {temp = a[i]; a[i] = a[j]; a[j] = temp;};
      i++; j--;
    }
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 15:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru