qsort

    0热度

    2回答

    我必须解决几个C问题,其中大部分都涉及不得不在某处使用qsort(),但无论我从网上获得多少帮助,都无法使其工作。 拿这个代码,例如: #include <stdio.h> #include <string.h> struct date { int day; int month; int year; };struct date d[5]={ {12,

    1热度

    3回答

    假设我有以下数组排序后的原始索引: int A[5]={2,3,5,4,1}; 在该阵列中,每个索引表示一个播放器。例如: A[0]=player 0 A[1]=player 1 ..... 我想在阵列中像这样的降序排序: A[5]={5,4,3,2,1}; ,也是我想跟踪球员的一个索引,这样我可以写数组排序像这个: {player 2, player 4, player 1, p

    0热度

    1回答

    下面的qsort实现来自“算法基础”一书,因此被认为是正确的。以下是我在Java中的实现。这是行不通的。问题是当随机选择分区时,生成的分区不正确。我希望有人能告诉我什么,我做错了: 鲍勃 import java.util.*; public class qsort { public static void main(String []args) { int []a

    1热度

    3回答

    void qsort (void *a, size_t n, size_t es, int (*compare)(const void *, const void *) 其中a是数组地址的开始,n是sizeof数组,es是sizeof数组元素。 我读了C语言中我无法理解的qsort的源代码。代码如下。 #define SWAPINT(a,es) swaptype = ((char*)a- (c

    0热度

    3回答

    我有一个返回1,0,或-1的比较器功能,声明如下: int multiPrecisionCompare(const DIGIT_T a[], const DIGIT_T b[], int32_t length); DIGIT_T哪里是int8_t。 我要调用一个函数qsort,但我有一个问题了解我有什么改变或里面怎么调用比较器功能。 qsort(bigArray->x, 8,30 , <-wh

    -1热度

    1回答

    我很惊讶,通过qsort和std::sort排序可以产生不同的结果。我需要帮助解释下面的代码片段的行为:使用qsort : // the following comparator has been used in qsort. // if l<r : -1, l==r : 0 , l>r 1 int cmpre(const void *l, const void *r) { if (

    6热度

    3回答

    我在做C动态数组库,有点。请注意,我在空闲时间为了乐趣而努力,所以请不要推荐数百万个现有的库。 我开始实施分拣。该阵列是任意的元素的大小,定义为结构: typedef struct { //[PRIVATE] Pointer to array data void *array; //[READONLY] How many elements are in array

    -1热度

    1回答

    我有一个结构: struct data { float goodbye; char balance; unsigned char clouds; float badge; double soda; char bat; short int parcel; char vessel; char spade;

    0热度

    2回答

    我有一个unordered_set称为方程。我不是来排序或快速排序是,这是跑办代码IM线: qsort(&equations, equations.size(), sizeof(string), strcmp); 我得到的错误是: error: cannot convert 'std::unordered_set<std::basic_string<char> >' to 'void*'

    2热度

    1回答

    我有这样的结构: typedef struct arvDado Arv; struct arvDado{ char c; int qtd; Arv* dir; Arv* esq; }; ,我做这个结构的指针的数组: Arv** vetArv = (Arv**)malloc(sizeof(Arv*)*qtd); 我想打一个快速排序,但我认为我的co