摘要: 题目描述 给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。 思路 如果slow走了L的长度那么fast走了2L 假设从开始到入口点的长度是s,slow在环里走的长度是d 那么 l = s + d 假设环内slow没走的长度是m,fast走的长度是n*(m+d) + d + 阅读全文
posted @ 2019-12-31 22:19 Assange 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 思路 如果该节点有右节点,那么它的下一个结点就是其右子树的最左节点 否则,如果他是父节点的左节点,则返回他的父节点,否则往上找,直到他的某个父节点a是a父节点的左节点,返回a的父节点。 1 class Solution: 2 def GetNext(self, pNode): 3 # write c 阅读全文
posted @ 2019-12-31 21:55 Assange 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 题目描述 给定一棵二叉搜索树,请找出其中的第k小的结点。例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4。 思路:中序遍历 1 class Solution: 2 # 返回对应节点TreeNode 3 def KthNode(self, pRoot, k): 4 # 阅读全文
posted @ 2019-12-31 21:31 Assange 阅读(250) 评论(0) 推荐(0) 编辑
摘要: 根据前序和中序重建二叉树: 1 class Solution: 2 # 返回构造的TreeNode根节点 3 def reConstructBinaryTree(self, pre, tin): 4 # write code here 5 if len(pre)==0: 6 return None 阅读全文
posted @ 2019-12-31 12:44 Assange 阅读(227) 评论(0) 推荐(0) 编辑