私はプログラムを作成するように頼まれました.私が終わった後、私はそれの再帰的なバージョンを作ることでした. それは大したことではなく、ひもをつなぎ合わせます。ここに私が書いたバージョンがありますが、これから再帰的なプログラムを作成する方法を誰か教えてもらえますか?
def laceStrings(s1, s2):
"""
s1 and s2 are strings.
Returns a new str with elements of s1 and s2 interlaced,
beginning with s1. If strings are not of same length,
then the extra elements should appear at the end.
"""
join = []
smaller = min(s1, s2, key=len)
for num in range(len(smaller)):
join.append(s1[num])
join.append(s2[num])
join = ''.join(join)
if len(s1) != len(s2):
smaller = len(smaller)
join = join + max(s1, s2, key=len)[smaller:]
return join
編集: 友人がこのテンプレートをくれましたが、まだわかりません。誰でも助けることができますか?
def laceStringsRecur(s1, s2):
"""
s1 and s2 are strings.
Returns a new str with elements of s1 and s2 interlaced,
beginning with s1. If strings are not of same length,
then the extra elements should appear at the end.
"""
def helpLaceStrings(s1, s2, out):
if s1 == '':
#PLACE A LINE OF CODE HERE
if s2 == '':
#PLACE A LINE OF CODE HERE
else:
#PLACE A LINE OF CODE HERE
return helpLaceStrings(s1, s2, '')