Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 922ddd5

Browse files
committed
Feat: 19
1 parent b642614 commit 922ddd5

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
## 题目
2+
3+
* 19. 删除链表的倒数第 N 个结点
4+
5+
给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。
6+
7+
## 思路
8+
快慢指针,快指针先走n步,然后双指针一起走,当快指针到达尾部时,此时慢指针的下一个元素正好是需要删除的元素。
9+
10+
## 代码
11+
12+
```php
13+
14+
class Solution {
15+
16+
/**
17+
* @param ListNode $head
18+
* @param Integer $n
19+
* @return ListNode
20+
*/
21+
function removeNthFromEnd($head, $n) {
22+
$dummy = new ListNode(null);
23+
$dummy->next = $head;
24+
25+
$fast = $slow = $dummy;
26+
for ($i = 0; $i <= $n; $i++) {
27+
$fast = $fast->next;
28+
}
29+
30+
while ($fast !== null) {
31+
$fast = $fast->next;
32+
$slow = $slow->next;
33+
}
34+
35+
$slow->next = $slow->next->next;
36+
37+
return $dummy->next;
38+
}
39+
}
40+
41+
```

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /