专门搜索python题目的软件计算机二级Python题目类型及分值
下载地址 https://share.weiyun.com/OvviwGnZ
资料目录 Python练习集100题 100道Python面试题 Python100经典练习题 Python经典题目100道题 Python题库(已收录100道真题) Python100例视频讲解课程 菜鸟教程Python教程100例 130道python练习题,涵盖基础内容的方方面面 Python考试题复习知识点试卷试题 PYTHON测试题和答案 python第一阶段考试题 Python经典面试题和答案解析 python期末考试复习试卷 python习题集大全(附答案解析) 老男孩Python全栈7期练习题(面试真题模拟) 尚观python第一阶段考试(面试真题模拟) 《Python程序设计基础与应用》习题答案 《Python快速编程入门》——课后题答案 Python编程基础张健 , 张良均课后习题及答案 Python程序设计基础及实践(慕课版)郭炜习题答案 Python程序设计基础习题答案与分析 python基础试题(含答案)
举例 最长公共前缀 题目要求 编写一个函数来查找字符串数组中的最长公共前缀,如果不存在公共前缀,返回空字符串 ""。 示例1: 输入: ["flower","flow","flight"] 输出: "fl" 示例2: 输入: ["dog","racecar","car"] 输出: "" 思路分析 以列表中的第一个单词作为基线,其余的单词逐个字符与第一个单词的字符进行比较,比如以flower做为基线,flower第一个字符是f,那么其余的单词的第一个字符也是f,就将这个f记录下来,逐一比较,直到某个位置上的字符出现不一致的情况。 在比较过程中,要注意单词的长度,如果某个单词已经比较到末尾,那么就可以停止了,因为这个单词的长度就是理论上可能的最大公共前缀 示例代码 # coding=utf-8
def get_max_prefix(lst): if len(lst) == 0: return "" base_word = lst[0] prefix_lst = [] for index, item in enumerate(base_word): b_common = False # 标识在index位置上,所有单词的字符是否相同 for word in lst: # index已经超过了单词的长度 if index >= len(word): break # 在index这个位置上,字符不相同 if word[index] != item: break else: # 如果for循环没有被break中断,就会进入到这个语句块 b_common = True
if not b_common: break prefix_lst.append(item)
return "".join(prefix_lst)
if __name__ == '__main__': lst = ["flower", "flow", "flight"] print(get_max_prefix(lst))
|