本文主要介绍Python中单词字符串的列表(list),找出列表中所有单词中前一个单词首字母和后一个单词尾字母相同,组成最长的单词链方法代码,并且每个单词不能多次使用。
例如:
words = ["giraffe", "elephant", "ant", "tiger", "racoon", "cat", "hedgehog", "mouse"]
最长的单词链列表:
["hedgehog", "giraffe", "elephant", "tiger", "racoon"]
1、用递归方法查找
words = ["giraffe", "elephant", "ant", "tiger", "racoon", "cat", "hedgehog", "mouse"]
def get_results(_start, _current, _seen):
if all(c in _seen for c in words if c[0] == _start[-1]):
yield _current
else:
for i in words:
if i[0] == _start[-1]:
yield from get_results(i, _current+[i], _seen+[i])
new_d =