我有這樣的結構:找到最常見的元素鏈表
typedef struct data student, *pstudent;
struct data{
char name[50];
int value;
pstudent next;
};
而且我需要找到一個無序鏈表最頻繁的學生的功能。 例如: 「約翰 - 值3」 「大衛 - 值2」 「安德魯 - 值4」 「約翰 - 值9」 在這種情況下,該函數將返回「約翰」,因爲他出現了兩次。
到目前爲止的代碼:
void count(pstudent p)
{
pstudent ptr1, ptr2;
ptr1 = p;
while(ptr1 != NULL && ptr1->next!=NULL)
{
ptr2 = ptr1;
while(ptr2->next != NULL)
{
if(strcmp(ptr1->name,ptr2->next->name)==0)
{
printf("Found %s, %s", ptr1->name,ptr2->name);
}
}
ptr1 = ptr1->next;
}
}
我怎樣才能使這項工作? 感謝您的幫助。
應該做些什麼count()函數? – Alex
按名稱計算列表中的重複項並返回最常見的重複項。 –
函數'count'被認爲是鏈表被排序。還返回類型'無效' – BLUEPIXY