在C中按字母顺序排序名称

时间:2012-02-18 00:53:50

标签: c sorting struct linked-list

我有一个C结构,其中包含一个人的联系信息,例如姓名,电话号码等。“联系”结构包含在链接列表中。我需要以一种方式插入节点,使链表按字母(升序)顺序排序。

C中是否有可以调用的内置排序功能?或者我是否必须编写自己的排序功能?如果有内置函数,我可以举例说明我如何在链表中的结构上调用它吗?

2 个答案:

答案 0 :(得分:3)

“列表”没有标准的排序方法。最接近的是qsort(它确实可以对用户定义的对象进行排序),但它只适用于连续范围(数组等)。

您可能必须实现自己的排序过程或使用数组而不是列表。

答案 1 :(得分:0)

以下是执行插入排序链接列表的代码示例。这不是适合您的剪切和粘贴,但会告诉您在该类型的插入中会发生什么:

http://www.c.happycodings.com/Sorting_Searching/code8.html

专注于“插入()”调用。我没有编译这段代码来测试它,但我读了它,看起来对我来说是正确的。它显示了如何搜索列表和指针调整。您应该能够从此代码中解决您的问题。

相关问题