c语言练习92:链表的中间结点

链表的中间结点

c语言练习92:链表的中间结点_第1张图片

c语言练习92:链表的中间结点_第2张图片

 c语言练习92:链表的中间结点_第3张图片

c语言练习92:链表的中间结点_第4张图片

链表的结点为空时无法访问其next成员否则会报错

/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     struct ListNode *next;
 * };
 */

typedef struct ListNode ListNode;
struct ListNode* middleNode(struct ListNode* head){
    if(head==NULL){
        return NULL;
    }
    ListNode*slow,*fast;
    fast=slow=head;
    while(fast&&fast->next){
        slow=slow->next;
        fast=fast->next->next;
    }
return slow;
}

c语言练习92:链表的中间结点_第5张图片

你可能感兴趣的:(c语言,链表,开发语言)