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的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-10Rakuten 乐天积分系统从 Cassandra 到 TiDB 的选型与实战
- 2025-01-09CMS内容管理系统是什么?如何选择适合你的平台?
- 2025-01-08CCPM如何缩短项目周期并降低风险?
- 2025-01-08Omnivore 替代品 Readeck 安装与使用教程
- 2025-01-07Cursor 收费太贵?3分钟教你接入超低价 DeepSeek-V3,代码质量逼近 Claude 3.5
- 2025-01-06PingCAP 连续两年入选 Gartner 云数据库管理系统魔力象限“荣誉提及”
- 2025-01-05Easysearch 可搜索快照功能,看这篇就够了
- 2025-01-04BOT+EPC模式在基础设施项目中的应用与优势
- 2025-01-03用LangChain构建会检索和搜索的智能聊天机器人指南
- 2025-01-03图像文字理解,OCR、大模型还是多模态模型?PalliGema2在QLoRA技术上的微调与应用