【发布时间】:2021-01-04 10:16:49
【问题描述】:
发现这个编码挑战相当棘手,似乎无法弄清楚我应该添加什么方法来明确排序字符串的姓氏。
当前解决方案:
def sort_reindeer reindeer_names
return sorted_names = reindeer_names.sort_by do |name|
name.split(" ").reverse.join
end
end
结果:
# issue: Expected: ["Kenjiro Mori", "Susumu Mori", "Akira Mori"]
# => instead got: ["Akira Mori", "Kenjiro Mori", "Susumu Mori"]
看起来我的代码已经看到每个姓氏都是匹配的,并决定映射名字并按字母顺序返回它们。如果姓氏匹配,如何阻止我的代码订购名字?你会建议我创建某种三元语句还是有更简单的解决方法。
【问题讨论】:
-
导致测试失败的输入是什么?如果姓氏相同,确定排序顺序的规则是什么?排序需要稳定吗?
标签: arrays ruby string algorithm sorting