_莫相逢

导航

2019年4月19日 #

LeetCode 145 二叉树的后序遍历(非递归)

摘要: 题目: 给定一个二叉树,返回它的 后序 遍历。 示例: 进阶: 递归算法很简单,你可以通过迭代算法完成吗? 解题思路: 1、使用一个栈,先把二叉树的右孩子压入,再把左孩子压入。这样在输出时就满足后序要求(先左后右)。 2、当某个节点的左孩子或者右孩子都为NULL时,可以访问。此外记录当前节点p的上一 阅读全文

posted @ 2019-04-19 20:25 莫晓风 阅读(240) 评论(0) 推荐(0) 编辑

LeetCode 160 相交链表

摘要: 题目: 编写一个程序,找到两个单链表相交的起始节点。 如下面的两个链表: 在节点 c1 开始相交。 示例 1: 示例 2: 示例 3: 注意: 如果两个链表没有交点,返回 null. 在返回结果后,两个链表仍须保持原有的结构。 可假定整个链表结构中没有循环。 程序尽量满足 O(n) 时间复杂度,且仅 阅读全文

posted @ 2019-04-19 16:46 莫晓风 阅读(103) 评论(0) 推荐(0) 编辑

LeetCode 2 两数相加

摘要: 题目: 给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。 如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。 您可以假设除了数字 0 之外,这两个数都不会以 0 开头。 示例: 解题思路: 逐位扫描 阅读全文

posted @ 2019-04-19 14:44 莫晓风 阅读(110) 评论(0) 推荐(0) 编辑

LeetCode 206 反转链表

摘要: 题目: 反转一个单链表。 示例: 进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题? 解题思路: 1、迭代方法,从前往后扫描一遍,以此改变当前指针p的指向,其中用到三个指针,当前指针p,上一指针last,头指针pHead。 2、递归方法,一层一层的递归到最后一个节点,再以此返回改变指向。 阅读全文

posted @ 2019-04-19 09:47 莫晓风 阅读(91) 评论(0) 推荐(0) 编辑