NoneQsort - это имя стандартной библиотечной функции C, которая сортирует массивы с помощью функции сравнения, предоставляемой вызывающей стороной. Другие языки программирования могут предоставлять аналогичные функции под тем же именем. Несмотря на название, эти функции не обязательно реализуют быструю сортировку, поэтому используйте тег [quicksort] вместо этого для вопросов, касающихся конкретно этого алгоритма. Используйте [qsort] ТОЛЬКО для вопросов о библиотечных функциях с таким именем.
1 ответ

Сортировка массива структур по 2 параметрам

У меня есть структура struct employee { int record; int ID; .... }; employee * arr = (employee*) malloc(501 * sizeof (employee)); И мне нужно отсортировать его по этим двум параметрам (ID сначала и запись как второй). Я использую стандартный Qsort с…
22 ноя '14 в 20:04
1 ответ

Самая длинная дублированная строка из программирования жемчуга

#include<stdlib.h> #include<string.h> #include<stdio.h> int pstrcmp( char **p,char **q) { return strcmp(*p,*q) ; } int comlen(char *p,char *q) { int i=0; while(*p && (*p++=*q++)) i++; return i; } #define M 1 #define MAXN 50…
28 мар '12 в 12:06
1 ответ

Как мне обрабатывать битовые поля и qsorting вместе?

Я использую язык C. Недавно я попросил и получил помощь, чтобы функция qsort работала для массива структур. Сейчас я изучаю битовые поля и пытаюсь создать программу, которая использует структуру, которая использует другую структуру, используя битовы…
25 сен '16 в 16:42
1 ответ

C-код для использования qsort() для сортировки в порядке, который пользователь хочет использовать с помощью указателей на функции

Я создаю код C для сортировки с использованием qsort(). Мне нужно получить массив от пользователя, и после этого мне нужно получить от пользователя, чтобы распечатать этот массив в порядке возрастания и d, если я хочу напечатать его в порядке убыван…
18 фев '17 в 10:10
1 ответ

Почему qsort вызывает ошибку в gcc 6.3.0, используя typedef enum?

Я работаю для алгоритма Сильно подключенного компонента (SCC). Итак, я отсортировал вершины по возрастанию, используя qsort функция. Использовать qsortЯ сделал свою собственную функцию сравнения и использовал typedef enum{false,true} bool, IDE VS201…
01 май '18 в 00:36
1 ответ

Как работает функция qsort()?

void qsort ( void* base, size_t num, size_t size, int (*compar)(const void*,const void*) ); Как функция qsort получает доступ к "размеру" байта после адреса, чтобы получить следующий элемент?Типографская вставка void* в char*?
15 авг '18 в 18:21
3 ответа

Сохранение исходного индекса после сортировки с использованием qsort

Предположим, у меня есть следующий массив: int A[5]={2,3,5,4,1}; В этом массиве каждый индекс представляет игрока. Например: A[0]=player 0 A[1]=player 1 ..... Я хочу отсортировать массив в порядке убывания следующим образом: A[5]={5,4,3,2,1}; а такж…
28 сен '16 в 13:34
1 ответ

Как организовать сортировку QSortFilterProxyModel?

Основной вид моего приложения содержит одноуровневый (без дочерних элементов) QTreeView, который отображает в среднем 30000 элементов. Из-за способа создания элементов они вставляются в модель без сортировки. Это означает, что при запуске приложения…
30 сен '10 в 18:12
4 ответа

Ошибка сегментации при использовании qsort

Я работаю над программой c для чтения из txt файл и сортировать строки. data.txt: jk ef ab cd bc gh fg ij hi de Вот мой код: #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <ctype.h&…
07 сен '17 в 07:13
1 ответ

Функция qsort в C неожиданное поведение?

Я испытываю странное и неожиданное поведение функции qsort(). У меня есть свой список узлов, и каждый из них содержит два значения, на основании которых я хочу отсортировать свой список (технически, массив). Например: Если у меня есть оригинальный м…
18 ноя '13 в 22:02
1 ответ

Используйте qsort с функцией сравнения

Я знаю qsort из библиотеки c, и я реализовал его с помощью символов и целых чисел (преобразовать из const void * form в соответствующую форму), но сейчас я реализую код, который дает мне самое длинное дублирование в данных предложениях - простая фун…
07 окт '11 в 12:13
2 ответа

Предупреждение при сортировке двумерного массива с помощью qsort

Я пытаюсь использовать qsort сортировать 2D-массив в C. Сортировка работает, но я получаю предупреждение: warning: initialization discards 'const' qualifier from pointer target type [enabled by default] Как я могу изменить мою функцию сравнения, что…
22 сен '13 в 18:39
0 ответов

Снятие рекурсии в Ярославском Dual Pivot Quicksort

Я начал работать над модифицированной версией Yaroslavskiys Dual Pivot Quicksort и в качестве первого шага попытался удалить рекурсию (код основан на рекурсивной версии в этой статье). Возможно, это немного старомодно, но я все же хотел бы попробова…
11 апр '17 в 11:23
1 ответ

qsort не вносит никаких изменений в массив целых чисел

Я использую qsort для сортировки массива целых чисел. Но qsort не вносит никаких изменений в массив. Моя функция сравнения выглядит следующим образом: int mycomp(const void *a, const void *b){ int *a1 = (int*)a; int *b1 = (int*)b; if ( a1 < b1 ) …
04 сен '16 в 08:53
1 ответ

Путаница между char* и char[] в qsort()

В стандарте qsort() функция объявлена ​​в <stdlib.h>, он падает, когда я делаю следующее: char *arr[]={"abc","def"}; qsort((void*)arr[i],strlen(arr[i]),sizeof(char),compare); Чтобы это работало, я должен использовать это так: int len=strlen(ar…
06 май '15 в 12:11
2 ответа

Взвешенное неперекрывающееся планирование заданий с использованием C

Я взял этот пример, который находится на C++ http://www.geeksforgeeks.org/weighted-job-scheduling-log-n-time/ Это реализация C #include <stdio.h> #include <stdlib.h> #define max(a,b) \ ({ __typeof__ (a) _a = (a); \ __typeof__ (b) _b = (b…
28 апр '17 в 10:21
3 ответа

C++ - Быстрая сортировка - Пользовательская реализация не работает

Мой код: void quickSort(int array[], int last) { int middle = last / 2; int i = 0, j = last; while(i <= j) { while(array[i] < array[middle]) i++; while(array[j] > array[middle]) j--; if(i <= j) { swap(array[i], array[j]); i++; j--; } } i…
27 окт '15 в 07:11
1 ответ

Почему этот код, использующий функцию qsort, не работает в C?

Сортирующая часть: order = (struct order_s **) calloc(pm->len - q, sizeof(struct order_s*)); for (i = 0; i < window_pos; ++i) { order[i] = (struct order_s *) malloc(sizeof(struct order_s)); order[i]->pos = i; order[i]->good = good[i]; } …
30 авг '12 в 15:38
2 ответа

C - Массивы, сортировка и изменение

Работал над задачей, которая была предметом целого ряда других вопросов о SO! Я дошел до стадии, когда снова пытаюсь добавить число в массив, хотя на этот раз код более сложен в том, как информация передается в параметрах. РЕДАКТИРОВАТЬ: код также н…
29 дек '11 в 16:44
0 ответов

Можете ли вы вызвать qsort для секции массива / матрицы (основной порядок строк)?

Можете ли вы вызвать qsort для секции массива или матрицы в главном порядке строк? Я хотел бы вызвать qsort для отдельных частей массива в pthreads, этот поток безопасен и нормально делать? Я работаю над разделением данного массива или матрицы по ко…
14 май '16 в 15:38