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


Posted in Python onNovember 28, 2018

利用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实现监控windows服务并自动启动服务示例
Apr 17 Python
Django ORM框架的定时任务如何使用详解
Oct 19 Python
Python中__slots__属性介绍与基本使用方法
Sep 05 Python
Python中的元组介绍
Jan 28 Python
Django Sitemap 站点地图的实现方法
Apr 29 Python
python爬虫实现中英翻译词典
Jun 25 Python
python实现函数极小值
Jul 10 Python
python实现单链表的方法示例
Sep 03 Python
python3获取url文件大小示例代码
Sep 18 Python
Pandas中DataFrame基本函数整理(小结)
Jul 20 Python
python小技巧——将变量保存在本地及读取
Nov 13 Python
python入门教程之基本算术运算符
Nov 13 Python
使用python对文件中的数值进行累加的实例
Nov 28 #Python
python的concat等多种用法详解
Nov 28 #Python
CentOS下Python3的安装及创建虚拟环境的方法
Nov 28 #Python
python dataframe向下向上填充,fillna和ffill的方法
Nov 28 #Python
在python中只选取列表中某一纵列的方法
Nov 28 #Python
手把手教你如何安装Pycharm(详细图文教程)
Nov 28 #Python
python 使用re.search()筛选后 选取部分结果的方法
Nov 28 #Python
You might like
PHP中Cookie的使用详解(简单易懂)
2017/04/28 PHP
Laravel模型事件的实现原理详解
2018/03/14 PHP
PHP面向对象五大原则之单一职责原则(SRP)详解
2018/04/04 PHP
ThinkPHP3.2框架自定义配置和加载用法示例
2018/06/14 PHP
Yii框架的路由配置方法分析
2019/09/09 PHP
深入分析js中的constructor和prototype
2012/04/07 Javascript
js的window.showModalDialog及window.open用法实例分析
2015/01/29 Javascript
JavaScript中用sort()方法对数组元素进行排序的操作
2015/06/09 Javascript
JSONObject使用方法详解
2015/12/17 Javascript
值得分享和收藏的Bootstrap学习教程
2016/05/12 Javascript
jQuery实现点击行选中或取消CheckBox的方法
2016/08/01 Javascript
老生常谈jquery id选择器和class选择器的区别
2017/02/12 Javascript
Node.js通过身份证号验证年龄、出生日期与性别方法示例
2017/03/09 Javascript
vue watch深度监听对象实现数据联动效果
2018/08/16 Javascript
jquery.param()实现数组或对象的序列化方法
2018/10/08 jQuery
nodejs初始化init的示例代码
2018/10/10 NodeJs
JavaScript ES6常用基础知识总结
2019/02/09 Javascript
vue excel上传预览和table内容下载到excel文件中
2019/12/10 Javascript
[05:00]第二届DOTA2亚洲邀请赛主赛事第三天比赛集锦.mp4
2017/04/04 DOTA
Python正则表达式的使用范例详解
2014/08/08 Python
json跨域调用python的方法详解
2017/01/11 Python
Python使用sftp实现上传和下载功能(实例代码)
2017/03/14 Python
使用Python监视指定目录下文件变更的方法
2018/10/15 Python
利用Python进行图像的加法,图像混合(附代码)
2019/07/14 Python
使用CSS3的box-sizing属性解决div宽高被内边距撑开的问题
2016/06/28 HTML / CSS
HTML5 Web Workers之网站也能多线程的实现
2013/04/24 HTML / CSS
Java工程师面试集锦之Spring框架
2013/06/16 面试题
C面试题
2015/10/08 面试题
What's the difference between an interface and abstract class? (接口与抽象类有什么区别)
2012/10/29 面试题
《每逢佳节倍思亲》教后反思
2014/04/19 职场文书
《望庐山瀑布》教学反思
2014/04/22 职场文书
学雷锋先进个人事迹
2014/05/26 职场文书
2016秋季运动会开幕词
2016/03/04 职场文书
关于战胜挫折的名言警句大全!
2019/07/05 职场文书
2019年朋友圈经典励志语录50条
2019/07/05 职场文书
OpenCV-Python实现图像平滑处理操作
2021/06/08 Python