摘要: 题目描述: 主要思路: 这题思路比较清晰,直接想到了用栈来做。若输入部分是’(‘、’[‘ 或者'{',则直接入栈,否则比较栈顶元素与输入是否匹配。若最后栈非空,则说明存在未匹配到的符号,返回false。 1 class Solution: 2 def isValid(self, s: str) -> 阅读全文
posted @ 2020-03-03 21:52 eltShawn 阅读(132) 评论(0) 推荐(0)
摘要: 题目描述:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。 思路:注意题目是要找“前缀”,而不是找最长公共子序列!(开始为了寻找最长公共子序列把这题想得过于复杂(@_@;)) 结合大佬们的高级思路,这题大概整理出四种解法。 (1)水平扫描法:假设第一个字符串就是 阅读全文
posted @ 2020-03-03 16:13 eltShawn 阅读(160) 评论(0) 推荐(0)
摘要: set、zip和map函数均为python的内置函数。 (1)set() 用法:set(interable) 用来创建一个无序不重复元素的集合。可以对其进行集合的一系列操作,例如求差集、并集和补集,利用这一特性可删除重复数据、探索元素之间的关系等。此外还可以进行len操作,返回集合中元素的个数。 a 阅读全文
posted @ 2020-03-03 16:12 eltShawn 阅读(1035) 评论(1) 推荐(0)
摘要: 主要思路: 用字典存储罗马数字 d = {'I':1,'V':5,'X':10,'L':50,'C':100,'D':500,'M':1000} 在读取字符串时,若左边的字符串小于右边,则将该字符所代表的数字变为负数,否则则为正数。将每个字符所代表的数字相加即可。 class Solution: d 阅读全文
posted @ 2020-03-02 16:01 eltShawn 阅读(148) 评论(0) 推荐(0)
摘要: 题目描述:判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 输入:121 输出:True 输入:-121 输出false 解题思路:明显,这题跟之前的反转字符串类似(这说明刷题大概是有用的吧,毕竟有思路了(ง •_•)ง)。 思路一:暴力转换字符串 class 阅读全文
posted @ 2020-03-01 22:41 eltShawn 阅读(163) 评论(0) 推荐(0)
摘要: 题目描述: 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。 示例:输入:123 输出:321 输入:-123 输出:-3 阅读全文
posted @ 2020-03-01 19:53 eltShawn 阅读(153) 评论(0) 推荐(0)
摘要: leetcode刷题的时候遇到关于二叉树的问题,这里做一个整理。 概要: 二叉树的搜索主要分为深度优先搜索(DFS)和广度优先搜索(BFS)。其中深度优先搜索中又分为:前序遍历(preOrder)、中序遍历(inOrder)后后序遍历(postOrder)。二叉树的遍历通常使用递归算法或者栈来实现。 阅读全文
posted @ 2020-03-01 15:14 eltShawn 阅读(138) 评论(0) 推荐(0)
摘要: 题目描述:给定一个二叉搜索树和一个目标结果,如果 BST 中存在两个元素且它们的和等于给定的目标结果,则返回 true。 解题思路:根据二叉搜索树的特点,对二叉搜索树进行中序遍历可以得到一个从小到达排列的列表,进而将该问题转换为“两数之和Ⅰ”,用双指针或者哈希表求解 因而这题的关键在于,二叉树中序遍 阅读全文
posted @ 2020-02-28 12:32 eltShawn 阅读(127) 评论(0) 推荐(0)
摘要: 1. 两数之和 题目描述:给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。 示例:给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返 阅读全文
posted @ 2020-02-28 10:36 eltShawn 阅读(210) 评论(0) 推荐(0)