CShap 链表的中间节点 源代码
时间: 2024-03-13 08:18:38 浏览: 59
链表源代码
以下是C#中链表的中间节点的源代码示例:
```
public ListNode MiddleNode(ListNode head) {
ListNode slow = head;
ListNode fast = head;
while (fast != null && fast.next != null) {
slow = slow.next;
fast = fast.next.next;
}
return slow;
}
```
这个函数中,我们使用了两个指针slow和fast,其中slow指向链表的头部,fast也指向链表的头部。我们在while循环中使用了一个条件,即fast不为null并且fast的下一个节点也不为null。这是因为如果fast为null或fast的下一个节点为null,那么它就不可能再向前移动了。
在循环中,我们使用slow指针每次移动一个节点,而使用fast指针每次移动两个节点。这样,当fast指针到达链表的末尾时,slow指针就会指向链表的中间节点。最后,我们返回slow指针所指向的节点作为结果。
阅读全文