gpt4 book ai didi

c - 如何使用 'key' : C 进行排序

转载 作者:行者123 更新时间:2023-11-30 17:12:41 26 4
gpt4 key购买 nike

我正在学习 C。我创建了一个程序来计算文本文件中单词的频率。我的结构包含三个键(频率、单词、nextLink)。

问题是我已经使用 key 对结构数组进行了排序,但不知道如何处理这个问题。任何指导、链接都会很棒。

我正在提供我的 arrayOfStructs 排序代码

void sortArray(int array[], int count)
{
int i,j,temp;
for (i = 0; i < count; ++i)
{
for (j = i + 1; j < count; ++j)
{
if (array[i] > array[j])
{
temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}
}
}

这是否是对 LinkedList 进行排序的可能方法

void sortList(struct Node *head)
{
struct Node *i, *j, *temp;

for (i = head; i != NULL ; i->next)
{
for (j = head->next; j != NULL; j->next)
{
if (head->frequency < head->next->frequency)
{
temp = head;
head = head->next;
head->next = temp;
}
}
}
}

struct Node
{
int frequency;
char word[50];
struct Node *next;
};

最佳答案

使用i = i->next代替i->next,使用j = j->next代替j ->下一步

void sortList(struct Node *head)
{
struct Node *i, *j, *temp;

for (i = head; i != NULL ; i = i->next) // i = i->next
{
for (j = head->next; j != NULL; j = j->next) // j = j->next
{
if (head->frequency < head->next->frequency)
{
temp = head;
head = head->next;
head->next = temp;
}
}
}
}

关于c - 如何使用 'key' : C 进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31363720/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com