- 1
- 0
- 约1.63万字
- 约 55页
- 2026-02-26 发布于广东
- 举报
人工智能通识(理工科)(仅用于个人学习,请勿上传网络,水平有限,难免有错,请不吝赐教,若因使用该课件造成不良后果,由使用人承担)
主要内容搜索算法的基本概念穷举搜索算法二分搜索算法广度优先搜索深度优先搜索
5.1搜索算法的基本概念搜索算法的定义:按照一定策略从问题求解空间中寻找问题解的算法面向线性数据结构的搜索:穷举搜索面向有序数据结构的搜索:二分搜索面向树形与图结构数据的搜索广度优先搜索深度优先搜索
5.2穷举搜索算法穷举法:也称枚举法,暴力求解方法,其运行效率低但简单有用。设有2n(n=6)个球队进行单循环比赛,计划在2n–1天内完成全部比赛,每个队每天进行一场比赛。设计一个比赛的安排,使在2n–1天内每个队都与不同的对手比赛。白帽子和红帽子问题。厅内有5个人,他们都戴着白帽子或者红帽子。已知戴白帽子的人说真话,戴红帽子的人说假话,请从他们各自提供的线索辨别谁戴白帽子,谁戴红帽子。甲:我看见一个戴白帽子的。乙:我没有看见戴红帽子的。丙:我看见一个戴白帽子的,但不是甲。丁:我没有看见戴白帽子的。戊:我的帽子和丙一样。
5.2穷举搜索算法穷举算法实现步骤(1)从问题解的表达形式出发,确定穷举对象。(2)逐一列举可能解,根据穷举的参数构造循环。(3)根据问题表达式逐一验证,满足条件采纳,否则抛弃。穷举算法的要点列举所有可能的解(不能遗漏,也不能重复)注意效率改进
5.2.1数学问题中的穷举【例5-1】输出所有的水仙花数。水仙花数是指一个3位数,每个位置上的数字的3次幂之和等于它本身,如153是一个水仙花数,因为13+53+33=153。传统算法:将一个整数的个、十、百位分解出来foriinrange(100,1000):a=i/100b=i/10%10c=i%10ifa**3+b**3+c**3==i:print(i)
5.2.1数学问题中的穷举【例5-1】输出所有的水仙花数。水仙花数是指一个3位数,每个位置上的数字的3次幂之和等于它本身,如153是一个水仙花数,因为13+53+33=153。方法二:枚举各位数字的方法foriinrange(1,10):forjinrange(0,10):forkinrange(0,10):ifi*100+j*10+k==i**3+j**3+k**3:print(i*100+j*10+k)
5.2.1数学问题中的穷举【例5-2】百钱百鸡问题:鸡翁一值钱5,鸡母一值钱3,鸡雏三值钱1。百钱买百鸡,问鸡翁、母、雏各几何?cock,hen,chick的取值范围:0cock20,?0hen33,0chick99(1)确定穷举对象公鸡、母鸡、小鸡(2)列举可能解,组织循环(3)验证表达式cock+hen+chick==1005*cock+3*hen+chick/3==100
5.2.1数学问题中的穷举【例5-2】百钱百鸡问题:鸡翁一值钱5,鸡母一值钱3,鸡雏三值钱1。百钱买百鸡,问鸡翁、母、雏各几何?forcockinrange(1,20):forheninrange(1,33):forchickinrange(3,99,3):ifcock+hen+chick==100and5*cock+3*hen+chick//3==100:print(cock=,cock,hen=,hen,chick=,chick)思考:共列举了多少组解?193232
5.2.1数学问题中的穷举forcockinrange(1,20):forheninrange(1,33):forchickinrange(3,99,3):ifcock+hen+chick==100and5*cock+3*hen+chick//3==100:print(cock=,cock,hen=,hen,chick=,chick)forcockinrange(1,20):forheninrange(1,33):chick=100-cock-henifchick%3==0and5*cock+3*hen+chick//3==100:print(cock=,cock,hen=,hen,chick=,chick)优化
您可能关注的文档
- 人工智能通识教程(理工版)教学课件第10章课件.pptx
- 人工智能通识教程(理工版)教学课件第7章课件.pptx
- 人工智能通识教程(理工版)教学课件第3章课件.pptx
- 人工智能通识教程(理工版)教学课件第4章课件.pptx
- 人工智能通识教程(理工版)教学课件第8章课件.pptx
- 人工智能通识教程(理工版)教学课件第9章课件.pptx
- 人工智能通识教程(理工版)教学课件第2章课件.pptx
- 人工智能通识教程(理工版)教学课件第11章课件.pptx
- 人工智能通识教程(理工版)教学课件第1章课件.pptx
- 人工智能通识教程(理工版)教学课件第6章课件.pptx
- 2026年许昌职业技术学院单招职业倾向性测试题库及完整答案详解1套.docx
- 2026年许昌职业技术学院单招职业倾向性测试题库及参考答案详解一套.docx
- 2026年许昌职业技术学院单招职业倾向性测试题库及答案详解1套.docx
- 2025年南平市第二医院招聘笔试备考试题及答案解析.docx
- 2026年春江苏开放大学文献检索与论文写作060930第一次过程性考核作业.docx
- 2025年小学数学分数与小数转换考点考试.docx
- 2026年许昌职业技术学院单招职业技能测试题库及参考答案详解.docx
- 2025年小学数学混合运算解题技巧总结试卷及答案.docx
- 2026年许昌职业技术学院单招职业技能测试题库参考答案详解.docx
- 2026年许昌职业技术学院单招职业技能测试题库及参考答案详解1套.docx
原创力文档

文档评论(0)