1. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление

Сортировать с помощью быстрой сортировки

Тема в разделе "С и С++", создана пользователем ALDon, 5 ноя 2010.

  1. ALDon

    ALDon Гость

    Репутация:
    0
    Нужно сортировать последовательность цисел через быструю сортировку или через сортировку слиянием.
    На первую строку вводим количество чисел,которые будем сортировать,а на вторую последовательность чисель.
    Вывод должен быть таким
    примерно так

    вводим
    6
    1 3 2 1 2 3
    выводит

    1 1 2 2 3 3


    Код:
    #include<iostream>
    using namespace std;
    int main(){
    int a;
    int b[10000];
    cin>>a;
    for(int i=0;i<a;i++)
    cin>>b[i];
    
    //.....быстрая сортировка или слиянием
    
    return 0;}
    вот код которую я могу написать,я не знаю как используются эти сортировки если можете пишите код с комментариями
     
  2. DarkKnight

    DarkKnight Well-Known Member

    Репутация:
    0
    Регистрация:
    1 авг 2010
    Сообщения:
    653
    Симпатии:
    0
    rrrFer, угу :))) А потом у 20 из 30 стунедтов один алгоритм :) А у 10+ из этих 20 даже переменные одинакового названия :)))

    З.Ы. Вот препадам наверное щас веселуха :)

    Код:
    #include <iostream>
    #include <time.h>
    
    using namespace std;
    
    int compare (const void *arg1, const void *arg2) //Функция для быстрой сортировки (qsort)
    {
    return *(int*)arg1 - *(int*)arg2;
    }
    void main(void)
    {
    setlocale(LC_ALL,"Russian"); //Добавил для локали
    int a;
    int b[10000];
    srand(time(NULL)); //Введем генератор случайно величины
    cout<<"Введите размерность массива: "; //Диалог добавил просто так...
    cin>>a;
    
    for(int i=0;i<a;i++)
    {
    //cin>>b[i]; //Заполнять лень поэтому обойдемся случ. величинами
    b[i] = rand()%200-100;// от -99.. До 99
    cout<< b[i]<<"\t";
    }
    
    cout<<"Отсортированный массив:"<<endl;
    qsort(b,a,sizeof(int),compare); //Отсортируем
    cout<<endl;
    for(int i=0;i<a;i++) //Выведим отсортированный массив
    {
    cout<< b[i]<<"\t";
    }
    
    }
     
  3. DarkKnight

    DarkKnight Well-Known Member

    Репутация:
    0
    Регистрация:
    1 авг 2010
    Сообщения:
    653
    Симпатии:
    0
    Это что бы преподаватель мог оторваться на студентах за проблемы которые у него дома ;-)))
    Преподы тоже люди - и тоже должны вымещать гнев ;-)))))
     
Загрузка...

Поделиться этой страницей