Leetcode练习记录一:20211215
2021/12/15 23:18:12
本文主要是介绍Leetcode练习记录一:20211215,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Leetcode练习记录一:20211215
第一题:回文数(简单)
给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。
回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。
示例 1:
输入:x = 121 输出:true 示例 2:
输入:x = -121 输出:false 解释:从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。 示例 3:
输入:x = 10 输出:false 解释:从右向左读, 为 01 。因此它不是一个回文数。 示例 4:
输入:x = -101 输出:false
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/palindrome-number
思路:
较为简单的做法是,将这个正数先转为字符串,然后将该字符串逆序,判断逆序前与逆序后是否相等即可。
class Solution(object): def isPalindrome(self, x): """ :type x: int :rtype: bool """ str_input = str(x) # 将int转化为str str_mid = str_input[::-1] # 将原字符串逆序 res = False if str_input==str_mid: # 比较逆序前后是否相同 res = True return res
第二题:最长公共前缀(简单)
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 “”。
示例 1:
输入:strs = ["flower","flow","flight"] 输出:"fl" 示例 2:
输入:strs = ["dog","racecar","car"] 输出:"" 解释:输入不存在公共前缀。
提示:
1 <= strs.length <= 200 0 <= strs[i].length <= 200 strs[i] 仅由小写英文字母组成
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/longest-common-prefix
思路:
由于在最理想的情况下,最长公共前缀为这个list中长度最短的那个字符串。因此这个最长公共前缀的长度不可能大于list中任意一个字符串的长度,故首先找到这个list所有字符串长度的最小值。
从第一位开始比较每个字符串各个位置对应的字符是否相同,如果所有字符串的该位置字符全部相同,则将该元素添加至结果数组;否则直接跳出循环,程序结束。
最后通过判断数组长度对应题目要求输出即可。
class Solution(object): def longestCommonPrefix(self, strs): """ :type strs: List[str] :rtype: str """ mid = [] # 存储结果数组 res = "" #存储最终结果 min_length = len(strs[0]) # 记录所有字符串长度的最小值 for i in range(1,len(strs)): mid_length = len(strs[i]) if mid_length<=min_length: # 更新最小值 min_length = mid_length for i in range(min_length): # 从每个字符串的第一个字符开始遍历判断 mid_str = strs[0][i] # 记录当前判断的字符 flag = 1 # 结果判定的标识位 for j in range(1,len(strs)): if strs[j][i]!=mid_str: # 匹配不上,更改标识位,跳出当前内层循环 flag = 0 break if flag ==1: # 当前字符匹配成功,加入结果数组 mid.append(mid_str) if flag==0: # 当前字段匹配失败,终止程序 break if len(mid)>0: # 根据题目要求正确输出对应格式 res = "".join(mid) else: res = "" return res
这篇关于Leetcode练习记录一:20211215的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-10-04el-table 开启定时器下,表格的选中状态会消失是什么原因-icode9专业技术文章分享
- 2024-10-03如何安装和初始化飞牛私有云 fnOS?-icode9专业技术文章分享
- 2024-10-03如何安装 App 并连接到飞牛 NAS?-icode9专业技术文章分享
- 2024-10-03如何安装飞牛 TV 并连接到影视服务器?-icode9专业技术文章分享
- 2024-10-03如何在PVE和ESXI上安装飞牛私有云 fnOS?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS安装系统异常情况处理-icode9专业技术文章分享
- 2024-10-03飞牛NAS如何创建存储空间?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS硬盘会自动休眠吗?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS如何安装飞牛影视和创建媒体库?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS如何为家人朋友开通影视账号?-icode9专业技术文章分享