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

быстрая сортировка (quickSort) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Создать програму которая подсчитывает количество слов с++ http://www.cyberforum.ru/cpp-beginners/thread713750.html
С клавиатуры вводится строка. Составить программу, которая подсчитывает количество слов, имеющих нечетную длину; вводит на экран частоту вхождения каждой буквы; удаляет текст, который размещен в круглых скобках.
C++ Переделать цикл for в while //2. Составить программу, которая выдает квадраты нечетных чисел в диапазоне от a до b (for) #include <iostream> #include <clocale> using namespace std; int main() { setlocale(LC_ALL, "Russian"); int a,b,x; do http://www.cyberforum.ru/cpp-beginners/thread713741.html
Ошибка в Visual Studio 2010 C++
Помогите исправить ошибку в MVS 2010.При создании проекта высвечивается ошибка,показанная на картинке...
C++ Составить программу, определяющую, которая из точек находится ближе к началу координат
Помогите пожалуйста с задачами!! Очень нужно..раньше не могла написать-не было инета... Мне нужно сделать 4 лабораторки..не большие...я в с++ вообще 0... ПОЖАЛУЙСТА!!КОМУ НЕ СЛОЖНО,ВЫРУЧАЙТЕ...УМОЛЯЮ...В ДОЛГУ НЕ ОСТАНУСЬ !!! Задача 1 Даны две точки А(х1,у1) и В(х2,у2). Составить программу, определяющую, которая из точек находится ближе к началу координат. Задача 2 Написать программу,...
C++ старояпонском календар http://www.cyberforum.ru/cpp-beginners/thread713731.html
в старояпонском календаре был принят 60-летний цикл, состояший из пяти 12 подциклов. Подцикли обозначались названиями цвета: зеленый, красный, желтый, белый, черный. Внутри каждого подцикла года носили названия животных: крыса, корова, тигр, заяц, дракон, змея, лошадь, овца, обьезяна, курица, собака, свинья. Например, 1984 год-год начала очередного цикла-называется годом зеленой крысы....
C++ Оператор условия Есть массив в нём есть 10 элементов(например цифр 1). Например я могу изменять любой элемент массива на 0. Как мне прописать, что бы при наличии у элементов массива №1, №2, №3 значения равного 0, происходил например вывод на экран какого-либо сообщения или выполнение действия? Конструкция if(Arr==Arr==Arr) { .... } -не катит подробнее

Показать сообщение отдельно
Andriy24
0 / 0 / 0
Регистрация: 22.11.2012
Сообщений: 35
29.11.2012, 21:10     быстрая сортировка (quickSort)
Мне нужно измерить за какое время алгоритм быстрой сортировки от сортирует массив из 50 000 элементов, но почему-то алгоритм сортирует довольно плохо и впридачу выводит непонятно что!
быстрая сортировка (quickSort)
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include<iostream>
#include<time.h>
const int size=50000;
 
 
using namespace std;
 
 
void quickSort(int [],int);
 
int main()
{
    int arr[size],b[size],c[size],d[size];
    for(int i = 0; i < size - 1; ++i) 
      arr[i]=b[i]=c[i]=d[i]=rand()%5;
      int N=size-1;
   
    quickSort(d,N);
    system("pause");
    return 0;
}
 
 
 
void quickSort(int a[size],int N) {
    clock_t  begt,  endt;
        begt =  clock () ;
 
  long i = 0, j = N;        
  int temp, p;
  p = a[ N>>1 ];        
  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 );
 
  
  if ( j > 0 ) quickSort(a, j);
  if ( N > i ) quickSort(a+i, N-i);
  endt =  clock();  
  
  cout<<"\nTime quickSortR = "<<endt-begt<<endl;
  
  for(int k = 0; k < size - 1; ++k) 
          cout<<a[k];
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 17:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru