0
点赞
收藏
分享

微信扫一扫

Python|寻找比目标字母大的最小字母问题解决方法


微信公众号:"算法与编程之美",欢迎关注,及时了解更多此系列文章

问题

给你一个排序后的字符列表 letters ,列表中只包含小写英文字母。另给出一个目标字母 target,请你寻找在这一有序列表里比目标字母大的最小字母。在比较时,字母是依序循环出现的。

举个例子:如果目标字母 target = 'z' 并且字符列表为 letters = ['a', 'b'],则答案返回 'a'


输入:letters =["c", "f", "j"]

输出:"f"

方法

将letters遍历一遍,如果有元素大于target,则返回第一个大于target的元素,如果letters中没有大于target的元素,则返回第一个元素。

代码清单


def  Than(letters,target):
     for i in letters:
         if i > target:
             return i
     return letters[0]   # 如果未找到比target大的则返回第一个元素
 letters = ["c", "f", "j","a"]
 # letters.sort()    #如果给出的letters不是按顺序

target  = "z"

print(Than(letters,target))


运行此代码:

Python|寻找比目标字母大的最小字母问题解决方法_java

结语

此题难度不大,最关键的就是遍历和循环,循环可以让我们的代码变得更方便,更简单。解出此题的方法也有很多种,我们可以学习其中的思路,写出更好的代码。

实习编辑:衡辉




举报

相关推荐

0 条评论