首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用递归函数的差异python

使用递归函数的差异python
EN

Stack Overflow用户
提问于 2015-12-27 23:49:24
回答 1查看 77关注 0票数 0

我有一些由随机字母组成的列表..

代码语言:javascript
复制
def similarity(out_list):

    i=0
    count=0
    while i<len(out_list):
        if out_list[i][-1]==out_list[i+1][-1]:
            count+=1

            return similarity(out_list[i][:-1]) + count
        elif out_list[i][-1]!=out_list[i+1][-1]:

            return similarity(out_list[i][:-1])
        i+=2

out_list=["ABABA","ACA","AGAGA","AAVA","XBX","ARAA","AADA","AAA","BABAB","ABA"]
similarity(out_list)

在我的代码中,我试图找出列表元素之间的区别,列表元素是第一个和第二个,第三个和第四个等等。

但是,由于我的函数是递归的,所以i的值始终为0,并且我无法控制其他元素,也找不到差异。

对于ABABA和ACA,差异是3,因为第一个A和第三个A在相同索引的两个单词中是相同的。所以差值5-2=3

我的代码需要做哪些更改?谢谢。

EN

回答 1

Stack Overflow用户

发布于 2015-12-27 23:55:59

考虑将i作为参数传递给递归函数,而不是在函数一开始就将其设置为0。很可能你也想做一些类似的事情来计算。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34482044

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档