python 列表递归求和、计数、求最大元素的实例

yipeiwu_com6年前Python基础

利用python的递归来执行求和、计数、求最大元素的方法简直溜到爆,这里粘贴一下代码:

列表的递归求和:

def sum(list):
 if list==[]:
  return 0
 return list[0]+sum(list[1:])

测试:

print sum([3,4,2,3])

列表的递归计数:

def countElem(list):
 if list==[]:
  return 0
 return 1+countElem(list[1:])

测试:

print countElem([3,4,2,3,2,4])

列表的递归求最大元素:

def maxElem(list):
 if len(list)==1:
  return list[0]
 return list[0] if list[0]>maxElem(list[1:]) else maxElem(list[1:])

测试:

print maxElem([3,4,7,1,2])

利用递归的核心思想有两点:

1、基线条件,找准基线条件,退出递归循环;

2、递归条件,不断将问题进行分解,直到符合基线条件。

以上这篇python 列表递归求和、计数、求最大元素的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

如何解决django-celery启动后迅速关闭

日志中也没有打印什么明显的错误,只是显示连接了rabbitmq后就关闭了 [2019-09-11 06:08:45,729: INFO/Beat] beat: Starting......

Python面向对象基础入门之设置对象属性

前言 前面我们已经介绍了 python面向对象入门教程之从代码复用开始(一) ,这篇文章主要介绍的是关于Python面向对象之设置对象属性的相关内容,下面话不多说了,来一起看看...

Python设计模式之简单工厂模式实例详解

Python设计模式之简单工厂模式实例详解

本文实例讲述了Python设计模式之简单工厂模式。分享给大家供大家参考,具体如下: 简单工厂模式(Simple Factory Pattern):是通过专门定义一个类来负责创建其他类的实...

如何用C代码给Python写扩展库(Cython)

如何用C代码给Python写扩展库(Cython)

之前一篇文章里提到了利用Cython来编译Python,这次来讲一下如何用Cython给Python写扩展库。 两种语言混合编程,其中最重要的是类型的传递。 我们用一个简单的例子进行入门...

eclipse创建python项目步骤详解

eclipse创建python项目步骤详解

eclipse安装Python插件之后,主要是为了方便Python代码就可以再Eclipse进行代码脚本,使用Eclipse开发Python脚本,主要写代码会有提示功能,提高写代码效率,...