offer25专题

剑指Offer25二叉树中和为某一值的路径

题目: 输入一棵二叉树和一个整数,打印出二叉树中结点值得和为输入整数的所有路径。从树的根节点开始往下一直到叶节点所经过的结点形成一条路径。 分析: 看到这个题首先想到的这是一个深搜的题目。 从根结点开始遍历,当遍历到叶子结点时,记录下这一路经中的和,如果和给定的值相等就是要找的路径,然后输出路径(用一个栈来记录路径),如果不相等就回溯,同时记录路径的栈也把最后进栈的数字抛出。 用深搜肯定

剑指offer25——复杂链表的复制

通过哈希表来进行复杂链表的复制。map的key值是原有链表,value是复制后的链表。 RandomListNode* Clone(RandomListNode* pHead){if(pHead==NULL )return pHead ;unordered_map <RandomListNode *,RandomListNode *>mp;RandomListNode *t=pHead ;wh

剑指offer25:合并两个排序的链表

剑指offer25 题目要求:给两个非递减单链表l1, l2,合并为一个非递减的单链表。 方法一:迭代 类似合并两个有序数组 ,注意此题一旦有一个链表越界,则剩下的另一个直接接到curr.next即可,而不用while 多次放入! 区别数组 ! 原理视频讲解 流程: 1.建立一个新的链表mer , mer也是哨兵节点(不存数据),并创建curr节点作为指针,用于存储每次新加入的节点 2.