摘要: 题目描述 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。 题目分析 这个题目也难住了我好长时间,然而这个题的关键就在于,二叉树的中序序列,总所周知:二叉搜索树的左节点小于根节点,右节点大于根节点;所以这个题目的要求换成一个排序的双向 阅读全文
posted @ 2018-09-07 17:19 轻抚丶两袖风尘 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 题目描述 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空)。 题目分析 ps:这个题很尴尬,刚开始我是用递归做,但是发现无论怎么样都没 阅读全文
posted @ 2018-09-07 16:18 轻抚丶两袖风尘 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 概要 Stack是栈,在数据结构中就已经知道,栈的属性是先进后出,操作也只有那么几个,一个是进栈,一个是出栈,还有个就是返回栈顶数据。 Stack继承于Vector(矢量队列),由于Vector是基于数组实现的,那么Stack也是基于数组实现,并不是基于链表。 Stack stack实际上也是通过数 阅读全文
posted @ 2018-09-07 10:44 轻抚丶两袖风尘 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 概要 Vector是矢量队列,是JDK1.0版本添加的类,他继承于AbstractList,实现了接口库List,RandomAccess,和Cloneable。 Vector实现了List,所以它能够为队列提供:增加,删除,修改,遍历等操作。 Vector实现RandomAccess接口,他使队列 阅读全文
posted @ 2018-09-07 10:32 轻抚丶两袖风尘 阅读(919) 评论(0) 推荐(0) 编辑
摘要: 概要 LinkedList是一个继承于AbstractSequentialList的双向链表。也可以当做堆栈、队列、双端队列进行操作。 LinkedList实现List接口,能够对LinkedList实现基本的操作。 LinkedList实现Deque接口即能将LinkedList当做双端端口使用 阅读全文
posted @ 2018-09-07 09:20 轻抚丶两袖风尘 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 题目描述 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。 题目分析 在数组的最后一个数是根节点(这点没有什么问题),从第一个数的位置到第一个能够大于根节点的数就是左子树部分,剩下的到后面根节点前的数都大于根节 阅读全文
posted @ 2018-09-07 08:35 轻抚丶两袖风尘 阅读(140) 评论(0) 推荐(0) 编辑