HnuWyd的博客

IT知识点记录

剑指Offer—树的子结构

树的子结构 题目 解题思路一:递归方式,依次把根节点、做孩子节点、有孩子节点作为根节点递归判断,只要有一个返回为true则就是子结构。判断的过程也是递归的,先判断根节点、左孩子是否一样,再判断右孩子。 public boolean HasSubtree(TreeNode root1,...

2018-04-28 19:29:18

阅读数:17

评论数:0

剑指Offer—链表中倒数第K个节点

剑指Offer之——链表中倒数第K个节点 题目 解题思路:解题思路:设连链表的长度为N,并定义两个指针p1,p2分别指向链表的头节点,首先p1向后移动K个节点,则剩下N-K个节点,然后指针p1和指针p2同时向后移动,直到节点p1为null,则p1一共移动了N个节点,指针p2一共移动了N...

2018-04-28 19:27:33

阅读数:12

评论数:0

剑指Offer—合并两个排序的链表

合并两个排序链表 题目 题目描述 解题思路一:递归方式,节点之间两两比较直到某个链表为空。 /** * 使用递归的方式 使节点之间相互比较 * @param list1 * @param list2 * @return */ public ListNode Mer...

2018-04-28 19:26:38

阅读数:6

评论数:0

剑指Offer—反转链表

剑指Offer——反转链表 题目 解题思路一:我们可以用栈的方式,把链表中的元素都压栈,改变next域,然后一次弹出,时间复杂度稍高。 /** * 使用栈的方式 * @param head 头结点 * @return 头结点 */ public L...

2018-04-28 19:23:55

阅读数:6

评论数:0

二叉树总结(序列化与反序列化)

二叉树总结(序列化与反序列化) 序列化(以先序为例,中序后序同理) /** * 序列化二叉树(先序为例) * 1、假设序列结果为字符串str,初始化str为""; * 2、先序遍历二叉树,如果遇到空节点,在str后面加上“#!” * “#”不是节...

2018-04-01 21:19:34

阅读数:39

评论数:0

二叉树总结(遍历二叉树)

二叉树总结(遍历二叉树) 一、前序遍历(递归方式) /** * 递归方式前序遍历 * @param headNode 二叉树的头结点 */ public void preErgodicBinaryTree(CreateBinaryTree.TreeNode headNode)...

2018-04-01 21:12:35

阅读数:16

评论数:0

二叉树总结(创建二叉树)

二叉树总结(创建二叉树) 根据前序遍历和中序遍历创建二叉树(注意根据前、中、后序列创建唯一二叉树的时候,一定要有两个遍历序列,且其中一个必须为中序。 我们先定义二叉树的节点结构,一般包含左孩子,右孩子,键值等参数信息。 /** * 二叉树节点结构 */ class TreeNode{ ...

2018-04-01 21:03:49

阅读数:51

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭