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

Отсортировать в лексикографическом порядке последовательность слов одинаковой длины (сортировкой Хоара) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Что такое инкапсуляция? http://www.cyberforum.ru/cpp-beginners/thread1198044.html
объясните пожалуйста что такое инкапсуляция и на примерах!
C++ Графика в с++ Здравствуйте, друзья программисты. Как подключить графику на с++ (консоль) в Visual Studio 2013? http://www.cyberforum.ru/cpp-beginners/thread1198039.html
Не знаю как создать программу C++
Прошу помочь создать программу с использованием стандартной библиотеки шаблонов. Я бы сделал сам, но скоро сессия и поэтому у меня мало времени, чтобы разбираться с принципами работы STL. А от данной программы будет очень зависеть моя оценка. Надеюсь на Вашу помощь. Так вот, само условие задачи: Пускай есть две фирмы. Нужно обеспечить возможность ввода информации о работниках фирм, в частности...
строки char16_t и char32_t C++
здравствуйте, читаю Прата Стивен - ЯП С++. там есть примеры вида: #include <iostream> using namespace std; int main() { wchar_t title = L"Chief Astrogator"; // строка w_char char16_t name = u"Felonia Ripova" ; // строка char_16 // char32_t car = U"Humber Super Snipe"; // строка char_32
C++ Char+48 http://www.cyberforum.ru/cpp-beginners/thread1197981.html
Что означает char(f)+48, вернее, зачем пишется 48?
C++ Тип возвращаемого значения не соответствует типу функции double get_left (void); { double e, c; e = ex - a; c = cx - r; return max(e, c); } double get_right (void); { подробнее

Показать сообщение отдельно
Demon55
1 / 1 / 0
Регистрация: 29.11.2013
Сообщений: 42
03.06.2014, 19:40  [ТС]     Отсортировать в лексикографическом порядке последовательность слов одинаковой длины (сортировкой Хоара)
То есть так? И что делать со средним элементом?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 
void hoarasort(char* arr, int l, int r)
{
 
char tmp, x = arr[(l + r) / 2];//серединый элемент
int ml = l, mr = r; 
do {
   while (strcmp(arr[ml],x)<0)
     ml++;
   while (strcmp(arr[mr],x)<0)
     mr--;
 
   if (strcmp(arr[mr],arr[ml]) && strcpy(arr[mr],arr[ml])) 
   {
     if (strcmp(arr[ml],arr[mr])<0)
     {
       tmp=arr[ml];
       arr[ml]=arr[mr];
       arr[mr]=tmp;
     }
     ml++;
     mr--;
   }
} while (strcmp(arr[ml],arr[mr]) && strcpy(arr[ml],arr[mr]));
 
if (strcmp(arr[mr],r)<0)
   hoarasort(arr, ml, r);
if (strcmp(arr[ml],arr[mr])<0)
   hoarasort(arr, l,mr);
}
 
Текущее время: 22:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru