python算法入门
目录
1.算法简介:
2. 时间复杂度
2.1 算法复杂度的判断
3. 空间复杂度
4. 递归
4.1 递归实例-汉诺塔问题
5. 列表查找问题
5.1 顺序查找
5.2 二分查找
1.算法简介:
2. 时间复杂度
2.1 算法复杂度的判断
3. 空间复杂度
4. 递归
4.1 递归实例-汉诺塔问题
def hanoi(n,a,b,c): # 程序目的:将n个盘子从a经过b,移动到cif n > 0:hanoi(n-1,a,c,b) # 若盘子大于n,则将上面n-1个盘子看成整体,从按a,c,b移到b(但这里移动了n-1个,是违规的,故不打印)print("合法实现,将盘子从 %s 移动到 %s"%(a,c)) # 这一步就是打印移动第n个盘子的步骤hanoi(n-1,b,a,c) # step3: 将n-1 个盘子按b,a,c移动到c
hanoi(3,'A','B','C')
5. 列表查找问题
5.1 顺序查找
def number_search(data_set,value): #value 表示被查找的值for i in range(len(data_set)):#for i,v in enumerate(data_set):if data_set[i] == value:return '这个数在列表中index为: %s'%(i)else:return '列表中没有这个数'if __name__ == '__main__':list = [1,2,3,4,5,6,7,8,9,10]print(number_search(list,10)) # 在list列表中查询是否有10这个数print(number_search(list, 11)) #在list列表中查询是否有11这个数
5.2 二分查找
#二分法查找
def ErFeng(list,value):left = 0 #左边第一个数的索引right = len(list)-1 #右边第一个数的索引while left <= right: #说明list列表中是有值的,可在list中寻找mid = (left+right) // 2 #二分if list[mid] == value: #中间的值刚好是要找的数return '您要查找的数在该列表索引为%s的位置'%(mid)elif list[mid] > value: #待查找的值在mid左边right = mid - 1else:left = mid + 1else:return "该列表中没有你要寻找的数"if __name__ == '__main__':list_data = [1,2,3,4,5,6,7,8,9,10,11,12]print(ErFeng(list_data,11))
python算法入门相关推荐
- python算法入门_GitHub标星2.6万!Python算法新手入门大全
问耕 发自 凹非寺 量子位 出品 | 公众号 QbitAI 今天推荐一个Python学习的干货. 几个印度小哥,在GitHub上建了一个各种Python算法的新手入门大全,现在标星已经超过2.6万.这 ...
- 最全Python算法入门
本文经AI新媒体量子位(ID:QbitAI)授权转载,转载请联系出处 问耕 发自 凹非寺 [导读]Github上超过6.8万星标:最全算法及Python实现.该项目的算法包括排序.搜索等经典算法,描述 ...
- Python 算法 入门到精通 - LeetCode - 3 :回文数
本系列适合跟我一样新入门的同学,我会从最基础的方法一步一步优化,所有代码都可以直接复制运行,希望有所帮助.如果喜欢可以订阅本系列(基于python3) 先看题目: 给你一个整数 x ,如果 x 是一个 ...
- GitHub标星2.6万!Python算法新手入门大全
今天推荐一个Python学习的干货. 几个印度小哥,在GitHub上建了一个各种Python算法的新手入门大全,现在标星已经超过2.6万.这个项目主要包括两部分内容:一是各种算法的基本原理讲解,二是各 ...
- python常用代码入门-最全Python算法实现资源汇总!
原标题:最全Python算法实现资源汇总! 整理 | Rachel 责编 | Jane 出品 | Python大本营(ID:pythonnews) [导语]数据结构与算法是所有人都要学习的基础课程,自 ...
- Python数据挖掘入门与实践-OneR分类算法
Python数据挖掘入门与实践-OneR分类算法 OneR算法 OneR算法是根据已有的数据中,具有相同特征值的个体最可能属于哪个类别进行分类. 在本例中,只需选区Iris是个特征中分类效果最好的一个 ...
- python迭代法求解方程_第一部分:趣味算法入门;第六题牛顿迭代法求一元三次方程的根...
100个不同类型的python语言趣味编程题 在求解的过程中培养编程兴趣,拓展编程思维,提高编程能力. 第一部分:趣味算法入门:第六题SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键 ...
- python计算存款_第一部分:趣味算法入门;第七题:最佳存款方案
这里将告诉您第一部分:趣味算法入门:第七题:最佳存款方案,具体完成步骤:100个不同类型的python语言趣味编程题 在求解的过程中培养编程兴趣,拓展编程思维,提高编程能力. 第一部分:趣味算法入门: ...
- k均值聚类算法python_K均值和其他聚类算法:Python快速入门
k均值聚类算法python This post was originally published here 这篇文章最初发表在这里 Clustering is the grouping of obje ...
- Python机器学习算法入门教程(四)
Python机器学习算法入门教程(四) 文章目录 Python机器学习算法入门教程(四) Logistic回归算法(分类问题) 什么是分类问题? Logistic回归算法 数学解析Logistic回归 ...
最新文章
- java Random.nextInt()方法
- 结合自己造的轮子实践按需加载
- Power BI新主页将使内容的导航和发现变得轻而易举!
- 简易拨号器iCall
- 解析底层原理!Android开发者面试如何系统复习?帮你突破瓶颈
- 天池 在线编程 卡牌游戏(01背包)
- java生成pdf_JAVA 生成PDF 并导出
- 面向对象编程Sample(C#)
- ES常用DSL语句(kibana常用语句)
- ch340串口驱动_敏矽微电子Cortex-M0学习笔记07-串口通信详解
- Centos配置github
- 【转载】回首大学四年,一个电工对大学课程的见解
- DRP项目知识点一: 数据库连接-封装Connection
- geos linux编译,geos库交织编译生成ARM平台库
- 仪器检定是为了满足什么需求?为什么不直接全部校准或检定呢?
- GT610的亲兄弟 GT620
- python求平均数直到0出现while_Python第一周 学习笔记(2)
- 有关rand(),srand()产生随机数学习总结
- Billy Belceb病毒编写教程---Win32篇
- Teach repeat replan 安装中遇到的问题记录
热门文章
- Flutter 本地小说阅读器
- 基于springboot2.0.6版本的TX-LCN分布式事务搭建说明
- 电脑html动态桌面壁纸制作,动态桌面软件《Wallpaper Engine》 让你的电脑桌面动起来!...
- Could not mount the media/drive ‘VBoxGuestAdditions.iso‘解决方案
- 扫描二维码,下载Android安装包
- 美通企业日报 | 阿迪发布星战系列球鞋;安进27亿美元收购百济神州20.5%股份
- 如何从阿里巴巴矢量图标库引入图标
- php exeil导入,反编译工具ILSpy.exe
- 谷歌云盘将共享链接中的文件保存到自己的云盘中
- GEE(Google Earth Engine)批量导入谷歌云盘