9.4作业

链表的基本知识:

链表是一种数据串,像一串用线(指针)串起来的珠子(节点)。每个“珠子”(节点)分两部分:存数据的“珠子芯”(数据域),和指向下一颗珠子的“线”(指针域)。珠子不用挨在一起放(内存非连续),靠“线”连起来就行。                                                                                                         

 常见的链表                                                                                                                                   1. 单链表:珠子只有一根线,只能从头串到尾,不能往回找。
​ 2. 双向链表:珠子有两根线,一根往前、一根往后,能正反着找。
 3. 循环链表:最后一颗珠子的线,回头串住第一颗,形成一个圈。

​递归的核心思想
把一个大问题拆解成结构相同的小问题,直到小问题简单到可以直接解决(即“终止条件”),再通过小问题的解逐步推导出大问题的解。
可以类比“俄罗斯套娃”:要打开最外层的套娃(大问题),需要先打开内层的套娃(小问题),直到最内层的套娃(最小问题,可直接打开),再反向依次打开外层。
 
2. 递归三要素
(1)终止条件(Base Case)
         定义递归何时停止,避免无限递归。
         通常是问题的“最小规模”,比如:
         计算阶乘时, n = 0  或  n = 1  时, factorial(n) = 1 。
​         遍历链表时,遇到  null (链表尾)则停止。
(2)递归公式(Recursive Case)
         描述“大问题如何分解为小问题”,即函数自身调用的逻辑。
​         例如:阶乘  factorial(n) = n * factorial(n-1) ;链表反转时,先反转后续链表,再处理当前节点。
(3)参数变化
         每次递归调用时,参数要向“终止条件”靠近(比如  n  减 1、链表指针后移),确保递归能终止。​

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值