当前位置: 首页 > news >正文

合并两个有序链表 --- 递归

目录

一:题目

二:算法原理

三:代码

四:递归相关总结


一:题目

题目链接:https://leetcode.cn/problems/merge-two-sorted-lists/


二:算法原理


三:代码

class Solution {
public:ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) {//递归出口if(l1 == nullptr)  return l2;if(l2 == nullptr)  return l1;//比较两个节点大小,选择小节点if(l1->val <= l2->val){l1->next = mergeTwoLists(l1->next,l2);return l1;}else{l2->next = mergeTwoLists(l1,l2->next);return l2;}}
};

四:递归相关总结

1.循环 VS 递归

循坏(迭代)与递归本质上都是解决重复的子问题,所以二者在理论上是可以转换的

例如上面数组的打印,使用循环和递归都可以做到

但是在实践过程中,有的时候使用循环方便,而有的时候使用递归方便,我们应该在什么情况下使用循环,什么时候使用递归呢?

2.递归 VS 深搜

递归的展开图实际上就是一颗树做一次深度优先遍历,所以二者没有区别

我们应该在什么情况下使用循环,什么时候使用递归呢?对于这个问题的解决,就与深搜是树的形状有关

但并不是所有情况都是这样,有的题目如果有特殊要求需要储存一些特殊信息什么的,可能此时使用循环也会比较麻烦

3.先序遍历 VS 后续遍历

递归的位置不同打印的顺序也会产生不同

中序遍历是二叉树特有的打印方式,多叉树中只有先序遍历和后序遍历

http://www.dtcms.com/a/594741.html

相关文章:

  • 编译立创S3小智语音机器人+修改表情
  • 网站的文件夹结构承包工地的网站
  • Simulink从入门到入门--热水器1
  • 【开题答辩实录分享】以《云音乐小程序设计与开发》为例进行答辩实录分享
  • 三生团队网站找谁做的国人原创wordpress主题
  • 京东云网站建设做网站四百全包
  • 深圳做男装什么网站容易找工网站建设总体需求报告
  • Java-167 Neo4j CQL 实战:CREATE/MATCH 与关系建模速通 案例实测
  • 基于突发性链路感知的自适应链路质量估计算法matlab仿真
  • 开发网站广州a站app
  • 一款3.8V to 55V输入,提供2A电流的DC-DC降压芯片推荐
  • OpenAI responses使用教程(三) ——Responses create python SDK 介绍
  • 北京运营推广网站建设黄骅港赶海推荐个好地方
  • 珠海网站建设公司哪个好最近发生的新闻事件
  • win10 配置下载安装 Office LTSC 专业增强版 2024
  • K8S RD: Kubernetes运维核心指南:污点调度、网络架构与全链路故障排查实战
  • 怎么做徐州市环保局网站备案表网站设置flash
  • 代做施组 方案的网站上海企业制作网站有哪些内容
  • 网站的盈利方法微信上做网站编辑
  • 14.日志封装和线程池封装
  • 呼和浩特做网站哪家好网站上线备案
  • 鼓楼徐州网站开发东莞通app打不开
  • 免费建站模板哪个好怎么查看自己网站有没有做301
  • 新网站如何让百度收录wordpress非代码方式添加备案号
  • COM组件
  • 如何构建加密货币分钟级回测系统(整体设计说明)
  • 手术相关公开数据集收集报告
  • 智能座舱知识图谱技术架构方案
  • 怎么用polylang做网站娶妻为什么不娶外贸女
  • 做网站和推广的公司哪家好网站跳出率一般是多少