ファーウェイパイロット-逆シーケンスチェーンテーブル出力
741 ワード
タイトル説明:入力した一方向チェーンテーブルを、チェーンテーブルの値を逆順序で出力します.チェーンテーブルの定義は、typedef struct tag ListNode{int value;struct tag ListNode*next; }ListNode;要求実現関数:void converse(ListNode**head);【入力】head:チェーンヘッダノード、スペースが開いている【出力】head:逆順後のチェーンヘッダノード【戻り】なし
【注意】この関数機能アルゴリズムを完了するだけで、中間にIOの入出力は必要ありません
【注意】この関数機能アルゴリズムを完了するだけで、中間にIOの入出力は必要ありません
//
LinkNode *reverse_link(LinkNode *head)
{
if(head == NULL)
return NULL;
LinkNode *prev , *curr , *reverse_head , *temp;
prev = NULL , curr = head;
while(curr->next)
{
temp = curr->next;
curr->next = prev;
prev = curr;
curr = temp;
}
curr->next = prev;
reverse_head = curr;
return reverse_head;
}