1
0
下面是我在5分钟内写的一个完整的实现:
输出:
|
2
3
我不会给你密码,我会给你这个主意。您可以在代码中实现这个想法。 所有递归问题的关键是找出两种情况:重复步骤和结束情况。一旦你这样做,它的工作几乎就像魔术一样。 将此原则应用于反转链接列表:
|
3
2
这是可以做到的。理解递归的关键是 起点是什么? 通常我会创建一个 “开始” 准备第一次调用的函数。有时它是一个独立的函数(就像在底层的非OO实现中)。有时它只是一个特殊的第一次调用(如下面的示例)。
另外,关键是在变量改变前记住它们,什么是
新的
这个
那么诀窍就是按正确的顺序做每件事。
调用函数时使用:
例子:
那么这里发生了什么? 首先,我们创建一个链接列表:
然后函数调用:
非面向对象实现;
|
FrostX · 如何反转字典中键的值? 2 年前 |
A Y · 通过旋转和反向操作进行数组置换 7 年前 |
user3285099 · 正在反转python列表的一部分吗 7 年前 |
Marty999 · ggplot2:反转次连续x轴 7 年前 |
KenProgrammer · 在Java中反转数字的输出 7 年前 |
loki · python linkedlist部分反转 7 年前 |
Richard Dabel · 解密密码块链异或“加密” 7 年前 |