当前位置:   article > 正文

【华为OD考试真题】快速人名查找【Python版】_快速人名查找算法

快速人名查找算法

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


题目

标题:
分值: 200 ’

一、题目正文


输入
zhang san,zhang san san
zhansa
输出
zhang san
输入
zhang san,zhang san san
zhaansas
输出
“”
输入
zhang san,zhang san san
zhansas
输出
zhang san san


参考题解

一、分析

本题使用正则表达式相对简单点,中心思想就是:使用正则表达式中的表达式".“(作用:匹配任意长度的字母数字字符串)将匹配式query分割成和姓名字数一致的几部分,如果分割后 的表达式中的某个能和当前姓名匹配,并且姓名的首字母以”."分割后也能和query匹配,那当前姓名就是查找到的姓名中的一个

二、代码

时间复杂度:O(n*n!)
空间复杂度:O(n)

from itertools import combinations
from re import match

names = 
  • 1
  • 2
  • 3
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/喵喵爱编程/article/detail/872201
推荐阅读
相关标签
  

闽ICP备14008679号