排序写题解
不限
栈
堆
排序
深度优先搜索
递归
队列
Poynt
数组
哈希表
链表
双指针
分治
谷歌 Google
回溯
字节跳动
链家
Bash
C
C++
C#
Go
Haskell
Java
JavaScript
Kotlin
MS SQL Server
MySQL
OCaml
Oracle
Perl
PHP
Python
Python3
Ruby
Rust
Scala
Swift
小白
哨兵
面试题
哈希
简单
数据结构
指针
图匠
迭代
list
快慢指针
TypeScript
算法模板
双端队列BFS
暴力法
递归算法
cpp
js
回溯
贪心
有序链表
双指针
Java
Java
方法一:迭代 假设链表为 $1 \rightarrow 2 \rightarrow 3 \rightarrow \varnothing$,我们想要把它改成 $\varnothing \leftarrow 1 \leftarrow 2 \leftarrow 3$。 在遍历链表时,将当前节点的 $\textit{next}
109.2k
方法一:迭代 假设存在链表 1 \rightarrow 2 \rightarrow 3 \rightarrow \varnothing,我们想要把它改成 \varnothing \leftarrow 1 \leftarrow 2 \leftarrow 3。 在遍历列表时,将当前节点的 \textit{next} 指针
237.0k
写在前面: 我清晰记得,以前在数据结构课上,老师和我们说:涉及到链表的操作,一定要在纸上把过程先画出来,再写程序。 现在想想,这句话简直是真理啊! 好理解的双指针 定义两个指针: pre 和cur ;pre 在前 cur 在后。 每次让 pre 的next 指向 cur ,实现一次局部反转 局部反转完成之后,