LeetCode精选TOP面试题——简单篇 发表于 2022-01-03 | 分类于 算法 | | 本文总阅读数 次 LeetCode 精选 TOP 面试题——简单篇TOP 面试题简单篇,以下解析为Python语言。 1.两数之和题目: 解析: 12345678910# 哈希表class Solution: def twoSum(self, nums: List[int], target: int) -> List[int]: # 建立一个哈希表 hashtable = dict() for i, num in enumerate(nums): if target - num in hashtable: return [hashtable[target - num], i] hashtable[nums[i]] = i return [] 13.罗马数字转整数题目: 解析: 123456789101112class Solution: def romanToInt(self, s: str) -> int: Roman2Int = {'I':1,'V':5,'X':10,'L':50,'C':100,'D':500,'M':1000} Int = 0 for index in range(len(s) - 1): if Roman2Int[s[index]] < Roman2Int[s[index + 1]]: Int -= Roman2Int[s[index]] else: Int += Roman2Int[s[index]] return Int + Roman2Int[s[-1]] 14.最长公共前缀题目: 解析: 123456789101112131415161718class Solution: def longestCommonPrefix(self, strs: List[str]) -> str: res = '' # 求出所有字符串中最短的字符串长度 str_len = len(strs[0]) for str in strs: if len(str) < str_len: str_len = len(str) # 字符串中一个一个字符比较 for i in range(str_len): c = strs[0][i] for str in strs: if str[i] != c: return res res += c return res