typedef struct Node{
SListDataType value; //值
struct Node *next; //下一个节点的地址
}Node;
//单链表
typedef struct SList{
Node *first;// *head 第一个节点的地址
} SList;
用快慢指针
SList* MiddleLists(SList *head){
Node* fast = head;
Node* slow = head;
while (fast != NULL){//整个循环中,快的走两步,慢的走一步,快的走一步就得判断
fast = fast->next;
if (fast == NULL){
break;
}
slow = slow->next;
fast = fast->next;
}
return slow;
}