首页 > 试题广场 >

将输入的一个单向链表,逆序后输出链表中的值.

[问答题]
题目描述:  将输入的一个单向链表,逆序后输出链表中的值。链表定义如下:  
typedef struct tagListNode  
{  
    int value;  
    struct tagListNode *next;  
}ListNode;  
要求实现函数:  void converse(ListNode **head);  
【输入】head:    链表头节点,空间已经开辟好  
【输出】head:    逆序后的链表头节点  
【返回】无  
【注意】只需要完成该函数功能算法,中间不需要有任何 IO 的输入输出 
java版本:
public ListNode reverseList(ListNode head) {
        ListNode res = null;
        while(head != null) {
            ListNode next = head.next;
            head.next = res;
            res = head;
            head = next;
        }
        return res;
    }
发表于 2020-02-19 16:08:18 回复(0)

头head后移一位,指针反向

发表于 2018-07-15 15:49:00 回复(0)
link *Reversal(link *listhead) {       
    link *p, *q, *head = NULL;      
    p = listhead;      
    while (p != NULL)       
    {            
        q = p->next;            
        p->next = head;            
        head = p;            
        p = q;      
    }       
    return head;
} 

发表于 2014-11-15 16:25:22 回复(0)