摘要: 来自LeetCode-98 给定一个二叉树,判断其是否是一个有效的二叉搜索树。 假设一个二叉搜索树具有如下特征: 节点的左子树只包含小于当前节点的数。节点的右子树只包含大于当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。 分析:根据二叉搜索树的自身特点:任一节点的左子树都比自身节点要小,任一 阅读全文
posted @ 2020-12-26 23:12 大西young 阅读(785) 评论(0) 推荐(0) 编辑
摘要: 来自LeetCode-20 给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。 分析:判断括号是否可以成对,建议使用栈进行判断 我们对给定 阅读全文
posted @ 2020-12-26 18:39 大西young 阅读(546) 评论(0) 推荐(0) 编辑
摘要: 来自LeetCode-24 这道题我们需要使用三个指针,除了指向相邻的两个元素外,还需要指向相邻两个元素的前一个元素 在开头设置好pre和pre.next,然后执行循环,把a,b挑出来,然后把next指针进行调换,即把a-b换成b-a,同时更新pre指针 首先看到最后 return self.nex 阅读全文
posted @ 2020-12-26 18:14 大西young 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 来自Leetcode-206 一个核心思想:将当前节点的next指针指向它的前驱节点。 所以我们需要定义两个指针,一个定义当前节点,另一个定义前一位节点 详情如下: 在第3行,我们定义两个指针分别为cur和prev,分别指向链表中的当前节点和前一位节点 然后我们在第5行执行核心的换位操作 另外需要强 阅读全文
posted @ 2020-12-26 18:09 大西young 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 源自LeetCode-141 给定一个链表,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。注意:p 阅读全文
posted @ 2020-12-26 18:07 大西young 阅读(434) 评论(0) 推荐(0) 编辑