我的老师给了我这个用于快速排序的代码,我无法理解,我需要这样做。你能给我一个详细的解释吗?感谢
int comparator(const void* e1, const void* e2) {
char* s1 = *(char**)e1;
char* s2 = *(char**)e2;
return strcmp(s1, s2);
}
答案 0 :(得分:0)
使用Quicksort,您需要提供一个比较元素并对它们进行排序的函数 - 函数的返回值解释了如何对要比较的两个元素进行排序。
如在例如http://www.cplusplus.com/reference/cstdlib/qsort/
在您的情况下,您的老师提供了比较器功能,该功能比较将您的参数视为字符串数组时指向的字符串,并比较每种情况下的第一个字符串。