【发布时间】:2017-10-21 00:56:08
【问题描述】:
我不确定我在单链表中插入节点的实现是否正确。我知道如何使用节点和数据插入它,但为此,必须使用两个结构进行插入。所以我有两个结构,一个具有花色和 cardValue 值的卡片结构和一个具有下一个指针和卡片结构的节点结构。我想将卡片数据插入到有序列表中的节点中。我还创建了自己的函数来比较这些值。这是我所拥有的:
typedef struct _Card
{
char cardValues[2];
char suits;
} Card;
typedef struct _Node
{
struct Card *card;
struct Node *next;
} ListNode;
ListNode *insertNode(ListNode *prev, Card *data)
{
ListNode *current = prev;
while((current->next != NULL) && (compareStruct(prev, data) < 0))
{
prev = prev->next;
}
}
int compareStruct(ListNode *node, Card *card)
{
int retVal = 0;
if(strcmp(node->next->card->cardValues, card->cardValues) < 0)
retVal = 0;
else
retVal = 1;
return retVal;
}
【问题讨论】:
-
嗨泡泡。你有什么问题?
-
您的
insertNode实际上并没有插入任何内容,也没有返回任何内容
标签: c