当前课程知识点:程序设计基础 > 第2周:程序设计方法基础-1 > 2.1 算法的概念与算法的描述方法—问题求解四部曲 > html
从本周开始到下一周,我们将用连续两周的时间学习第二部分程序设计的基础内容。这些内容与编程语言无关,但我们认为这些内容都应该是在学习一种具体的语言之前应该掌握的,就像学习乐器之前,先要学习视唱练耳一样。
如果你已经学习过一门语言,那么第2周的内容对你可能有点小儿科了,不过你可以回头看看你之前的学习是否忽略了这部分的训练。如果你之前没有学过任何语言,那么刚好符合我们的规划和设计,我们将带领你从画流程图开始学起,无需编写代码就认识什么是程序设计。
第1讲“算法的概念和描述方法”从人求解问题的基本步骤讲起,主要讨论下面几个问题:
1) 人是如何求解问题的?计算机如何求解问题?计算机求解问题与人求解问题有何不同?
2) 什么是算法?算法有什么特性?算法的描述方法是什么?
第2讲“顺序结构和选择结构” 结合生活中的实例,重点讨论下面几个问题:
1) 顺序结构有什么特点?
2) 什么时候需要使用选择结构?
3) 选择结构有几种形式?
第3讲“循环的控制方式”结合生活中的实例,重点讨论下面几个问题:
1) 什么情况下需要使用循环结构?选择循环结构的一般原则是什么?
2) 当型循环和直到型循环有什么区别?
3) 循环的控制方式主要有哪几种?
第4讲(上)“用循环实现累加运算”,主要讨论下面几个问题:
1) 循环是如何执行的?
2) 如何理解程序设计中的sum=sum+n?为什么它能实现累加运算?
3) 如何保证循环是可终止的?
第4讲(下)“从累加到累乘”,主要讨论下面几个问题:
1) 如何找出累加项的构成规律?
2) 如何实现累乘运算?程序设计时,累乘和累加有什么不同?
第5讲“嵌套循环”,主要讨论下面几个问题:
1) 嵌套循环是如何执行的?
2) 如何设计嵌套循环?
第6讲“循环不变式”,主要讨论下面几个问题:
1) 如何确定循环过程是正确的?
2) 何为循环不变式?
其中,第4讲和第5讲是本周的重点,悄悄告诉你一个独家秘笈:要想理解循环是如何执行的,一定要先学会在你的大脑——这个不插电的计算机上“跑”一遍循环,然后将这个“跑”循环的过程用笔和纸记录下来,每个步骤都不能少哦。这也是理解后面的嵌套循环的关键。此外,理解变量的内涵是理解用循环实现累加累乘的关键。
第6讲是难点,因为我估计“循环不变式”这个概念,之前你可能没有听说过,即使你学过了一门编程语言,它有什么用呢?等你看完视频,答案就会揭晓。
本周介绍完三种基本控制结构以后,如果你想知道如何运行流程图,以及程序设计的基本方法有哪些,且听下周分解。
-1.1 计算机与人工智能、计算机系统
--html
--Video
-1.2 计算机程序设计语言
--Video
-1.3 数据的表示和存储——二进制
--Video
--Video
--Video
-1.4 数据的表示和存储
--Video
-2.1 算法的概念与算法的描述方法—问题求解四部曲
--html
--Video
-2.2 顺序结构和选择结构—条条道路通罗马
--Video
-2.3 循环结构—循环的控制方式—控制循环和买苹果一样简单
--Video
-2.4 循环结构—用循环实现累加累乘运算—透视变量的内涵
--Video
--Video
-2.5 循环结构—嵌套循环—嵌套的奥妙
--Video
-2.6 进阶内容:循环结构—循环不变式—你确定你设计的循环正确吗
--Video
-3.1 基于流程图仿真的可视化计算工具——RAPTOR之让你的流程图动起来
--html
--Video
-3.2 基于流程图仿真的可视化计算工具——RAPTOR之再飞一会儿
--Video
-3.3 自底向上的程序设计方法
--Video
-3.4 自顶向下、逐步求精的程序设计方法
--Video
-3.5 进阶内容:结构化程序设计方法——结构化就像搭积木一样
--Video
-3.6 进阶内容:模块化程序设计方法——分工与合作的艺术
--Video
-3.7 进阶内容:面向对象程序设计方法
--Video
-4.1 分治—就在我们身边的哲学
--html
--Video
-4.2 穷举—从找回你的QQ密码谈起
--Video
-4.3 递推—从前生到来世
--Video
-4.4 迭代(上)—简单重复不简单
--Video
-4.5 进阶内容:迭代(下)—以直代曲
--Video
-4.6 递归—我中有我
--Video
-5.1 RAPTOR中的数组----一堆数据来了
--html
--Video
--Video
-5.2 求最大最小值
--Video
-5.3 线性查找——循规蹈矩
--Video
--Video
-5.4 二分查找——看商品猜价格的秘诀
--Video
--Video
--Video
-5.5 进阶内容:分块查找——图书馆查书的奥秘
--Video
-5.6 进阶内容:哈希查找——小哈希映射大道理
--Video
-6.1 冒泡排序
--html
--Video
--Video
--Video
-6.2 选择排序和交换排序
--Video
--Video
-6.3 插入排序和希尔排序
--Video
--Video
--Video
-6.4 归并排序
--Video
--Video
-6.5 快速排序
--Video
--Video