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设计】。

相关文章

Python使用arrow库优雅地处理时间数据详解

前言 大家应该都知道在很多时候我们不得不和时间打交道,但在Python标准库中处理时间的模块其实设计的不是很友好,为什么我会这么说?因为我相信大部分人几乎每次在处理时间数据时一而再,再...

Python中实现字符串类型与字典类型相互转换的方法

本文以实例形式简述了Python中字符串类型与字典类型相互转换的方法,是比较实用的功能。具体方法如下: 一、字典(dict)转为字符串(string) 我们可以比较容易的将字典(dict...

Python中typing模块与类型注解的使用方法

实例引入 我们知道 Python 是一种动态语言,在声明一个变量时我们不需要显式地声明它的类型,例如下面的例子: a = 2 print('1 + a =', 1 + a) 运行...

python numpy数组的索引和切片的操作方法

NumPy - 简介 NumPy 是一个 Python 包。 它代表 “Numeric Python”。 它是一个由多维数组对象和用于处理数组的例程集合组成的库。 Numeric,即 N...

使用Python控制摄像头拍照并发邮件

o1 前言 为什么会有写这个程序的想法呢? 最初的想法是写一个可以用电脑前置摄像头拍照的程序,在舍友使用你电脑的时候,不经意间获取到一大堆奇葩舍友的表情包。 然后我又突发奇想,要不搞个开...