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

Как правильно запустить поразрядную сортировку? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вычислить сумму чисел массива, принадлежащих интервалу http://www.cyberforum.ru/cpp-beginners/thread979833.html
Доброго времени суток! Помогите реализовать программу, пожалуйста. Разработать программу (Console Application) на языке C/C++, которая обеспечивает создание массива Mas из N случайных целых чисел в диапазоне от Min до Max. Числа N, Min и Max вводить с клавиатуры. Вывести массив на экран. Выполнить действия с массивом "Вычислить сумму чисел массива, принадлежащих интервалу -5<X<20"....
C++ Многопоточное приложение Есть класс. В нем 2 функции. как в одной функции можно создать 2 потока выполняющую одну и туже функцию. иможно ли передать в поток интовое значение? http://www.cyberforum.ru/cpp-beginners/thread979831.html
C++ Редактирование(добавление/удаление) объемных текстовых файлов
Предположим, есть большой текстовый файло размером 1гб, из которого нужно удалить некоторые строчки. Я так подозреваю, что самые простые текстовые редакторы делают как-то так: 1) На место i - word_to_delete_size записывают i-ый символ и так до конца файла 2) Держат весь файл в оперативке, там уже удаляют строчку и затем просто перезаписывают весь файл Но, как отмечалось выше, файл довольно...
Исправить ошибку Error c2296 C++
#include<iostream> #include<thread> class Pro { public: float **Mas1;
C++ транспонирование матрицы ! http://www.cyberforum.ru/cpp-beginners/thread979792.html
Добрый день, помогите пожалуйста сделать задание "Задана матрица (двумерный массив) вещественных чисел размерностью MxN. Транспонировать матрицу, не используя вспомогательного массива. Результат вывести на экран." я видел на этом форуме такое,но препод сказал что это не верно,что в нём использовался вспомогательный массив. На сколько я понял нужно сделать как то так: int m= {{5, 4, 2, 1}, {3,...
C++ Описание классов и порождение объектов в С+++ Помогите ,пожалуйста! Дана предметная область : авиакассы. Написать программу на языке С++ реализующую разработанную структуру классов, выполняющую разработанные сценарии использования объектов (используя метки public, private, protected). Помогите написать программу с простыми функциями,Плииз! подробнее

Показать сообщение отдельно
sigma7i
 Аватар для sigma7i
1 / 1 / 0
Регистрация: 26.03.2013
Сообщений: 17
17.10.2013, 12:45     Как правильно запустить поразрядную сортировку?
Добрый день!
есть такая замечательная ветка Алгоритмы сортировок

есть там поразрядная сортировка:
Кликните здесь для просмотра всего текста
чтобы не прыгать по ссылкам:
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
typedef struct slist_ { 
  long val;
  struct slist_ *next; 
} slist;
 
// функция сортировки возвращает указатель на начало отсортированного списка 
slist *radix_list(slist *l, int t) {
  //  t - разрядность (максимальная длина числа) 
  int i, j, d, m=1;
  slist *temp, *out, *head[10], *tail[10];
  out=l;
 
  for (j=1; j<=t; j++) { 
    for (i=0; i<=9; i++)
      head[i] = (tail[i]=NULL);
 
    while ( l != NULL ) {
      d = ((int)(l->val/m))%(int)10;
      temp = tail[d];
      if ( head[d]==NULL ) head[d] = l;
      else temp->next = l;
      temp = tail[d] = l;
      l = l->next;
      temp->next = NULL;
    }
    for (i=0; i<=9; i++)
      if ( head[i] != NULL ) break;
    l = head[i];
    temp = tail[i];
    for (d=i+1; d<=9; d++) {
      if ( head[d] != NULL) { 
        temp->next = head[d];
        temp = tail[d];
      }
    }
    m*=10;
  }
  return (out);
}


пытаюсь ее запустить:
Кликните здесь для просмотра всего текста

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int main()
{
    slist ls[19];
    int integer[19] = {5,7,1,33,66,44,15,9,0,96,100,88,33,21,12,11};
 
    for(int ix=0; ix<19; ix++){
        ls[ix].val = integer[ix];
    }
 
    radix_list(ls,3);
 
    for(int i = 0; i<19;i++)
    std::cout << integer[i] << " ";
 
 
    std::cout << std::endl;
}


вопрос: как запустить?
и аргумент t в функции radix_list, имеется ввиду максимальная длина числа в десятичной системе или двоичной?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 04:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru