- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
程序设计基础内部讲义.doc
郑州大学
2012级计算机科学与技术
程序设计基础内部讲义
讲授教师:王黎明
班级:
姓名:
第一章 解决问题的一般概念
要点
日常生活问题的解决
问题的类型
计算机解决的问题
解决问题的难点
一、日常生活问题的解决
明确问题:
理解问题:理解问题提出方的知识背景;了解自己的知识背景;关键是必须能与客户沟通并搞清楚解决问题涉及的细节。
寻找备选方案:尽可能全面列出可行的备选方案。
从备选方案列表中找出最好的解决方案:制定一个评定的标准,对所有的方案进行评价。
列出所选择的解决方案的指令:这些有限的、分步的指令必须包含在第二步所确定的知识范围内。
评价解决方案:检查它的结果是否正确,是否令用户满意,如果结果错误或者不能令人满意,必须重新设计一个解决方案。
解决问题的这6个步骤可以适用于绝大多数情况。
大多数人可能不知道这6个步骤,但却一直在使用它们。
[例子]关于今晚做什么的问题
第一步:明确问题 如何度过一个漫长的夜晚。
第二步:理解问题。
大学生、住校、学校纪律、学习压力......
第三步:寻找备选
(1)看电视
(2)玩游戏
(3)去教室学习
(4)在寝室学习
第四步:从备选方案列表中找出最好的解决方案。
去教室学习
第五步:准备一个步骤(指令)列表
(1)背书包 (2)进教室 (3)学习高数
(4)学习英语 (5)学习线代 (6)回寝室
第六步:评价这个方案。
有意义吗?快乐吗?
描述问题的格式
第一步:明确问题。
第二步:理解问题。
(1)在有助于问题理解的地方进行解释
(2)描述知识背景(包括解决问题所需要的各种知识)
第三步:寻找备选
方案 优点 缺点
(1)
(2)
(3)
……
第四步:从备选方案列表中找出最好的解决方案。
为什么选择这个方案?
第五步:列出所选择的解决方案的指令
(1)
(2)
(3)
……
第六步:评价这个方案。
这个方案有效吗?如果无效,如何进行改进?
[例子]两个整数的乘法
第一步:明确问题 整数乘法。
第二步:理解问题。
只能用笔和纸,知道乘法表,......
第三步:寻找备选
(1)传统算法
(2)英国算法
(3)a la russe(俄罗斯式)算法
(4)分治法
第四步:从备选方案列表中找出最好的解决方案。
传统算法。 (什么标准?)
第五步:准备一个步骤(指令)列表
从右到左取出被乘数的每一位,与乘数相乘,把中间结果写在上一个中间结果的下面,同时最低位往左偏移一位。把每一行全部加起来得到结果。
第六步:评价这个方案。
结果正确。
传统算法 英国式算法
a la russe(俄罗斯式)算法
分治法
uv × xy = ( 102 u + v ) × ( 102 x + y )
= 104 ux + 102 (uy + vx) + vy
二、问题的类型
算法方案:可以通过一系列的动作来解决问题的方案,叫做算法方案。通过选定的步骤达到预期的目标,这些步骤叫做【算法】。
启发式方案:不能通过一些直观的步骤来解决的方案叫做启发式方案。(这类问题除了必须有相应的知识和经验外,还需要经过不断的尝试和失败才能达到最终目标。)
《韦氏大学词典(第九版)》中,算法的解释是“求解数学问题(如寻找最大公约数)的一个过程,该过程步骤有限,通常还涉及重复的操作;广义地说,算法是按部就班解决一个问题或为达到某个目标的过程。”
问题解决者在算法方案和启发式方案中都可以采取6个步骤。
在启发式方案中,第6步的正确性和恰当性标准不确定。
在启发式方案中,问题解决者通常要反复执行这6个步骤,并在做出决定前仔细评价每一种可能的方案。同一种方案不一定在任何时候都适用,所以问题解决者在以后解决同样问题的时候必须重新进行评价和分析。
许多问题需要将这两种方案结合起来加以 解决。
三、计算机解决的问题
解决方案:本课程中特指问题解决过程中的第5步所列出的指令序列。遵从这些指令才能得到满意的结果。
结果:指成果或在计算机辅助下得到的完整答案。
程序:指用特定的计算机语言编写的一组用于解决问题的指令。
计算机主要用来执行那些对于人来说非常困难或非常耗时的算法方案。
计算复杂的微积分;
将1,000,000个名字按字母排序,
。。。
人类比计算机更善于使用启发式方案。
下围棋
说汉语
。。。
处理启发式问题所涉及的计算机技术领域叫做人工智能。人工智能可以让计算机建立自己的知识库并学会人类的语言等,通过人工的手段赋予计算
您可能关注的文档
最近下载
- (2025秋)人教版二年级数学上册全册教案(新教材).pdf
- 第二单元大单元教学设计 高一语文必修上册.docx VIP
- 2025年燃气安全生产管理人员模拟考试题库及答案.docx VIP
- 高中音乐 人音版 必修《音乐鉴赏》《舞动心弦——舞蹈音乐》 第四课时.pptx VIP
- 住院医师临床思维培养ppt模板.pptx VIP
- 反渗透纳滤组合工艺高盐废水深度处理及零排放预浓缩.pdf VIP
- 超声成像系统数字扫描变换器(参考).pptx VIP
- JTG3441-2024 公路工程无机结合料稳定材料试验规程.pdf VIP
- 腹腔镜下卵巢囊肿剥除术配合.pptx VIP
- 2026届高三语文一轮复习教学计划.docx
文档评论(0)