一.初识数据结构与程序开发

2019-12-09  本文已影响0人  光头披风侠

1.数据结构的类型

2.算法的条件

算法的特征 内容与说明
Input 0个或多个输入数据,这些输入必须清楚的描述或定义
Output 至少一个输出结果,不可能没有输出结果
Definitenesss(明确性) 每个指令或步骤必须是简洁明确的
Finiteness(有限性) 在有限步骤后一定要结束,不会产生无限循环
Effectiveness(有效性) 步骤清楚且可行,能让用户用纸笔计算而求出答案

3.伪语言

接近高级程序设计语言的写法,也是一种不能直接放进计算机中执行的语言。
一般需要一种特定的预处理器(preprocessor),或者用人工编写转换成为真正的计算机语言。


4.程序设计的好坏一般考虑以下四点

1️⃣可读性(Readability)高:阅读与理解都相当容易;
2️⃣平均成本低:成本考虑不局限于编码的成本,还包括执行、编译、维护、学习、调试与日后更新等成本;
3️⃣可靠性高:所编写出来的程序代码稳定性高,不容易产生边界效应(Side Effect);
4️⃣可编写性高:针对需求所编写的程序相对容易.

5.一个程序的产生过程分为五步

➊ Requirements(需求):了解程序所需的的问题是什么,有哪些输入和输出等;
➋ Design and plan(设计规划):根据需求选择适合的数据结构,并以某种易于理解的表示方法写一个算法以解决问题;
➌ Analysis and discussion(分析讨论):思考其他可能合适的算法和数据结构,最后选出最适当的一种;
➍ Coding(编写程序):把分析的结果写成初步的程序代码;
➎ Verification(测试检验):最后必须确认程序的输出是否符合需求,这个步骤得分步地执行程序并进行许多相关的测试.

6.结构化程序设计

结构化程序设计的核心精神就是"由上而下设计"与"模块化设计"。
➜ 由上而下:将整个程序需求从上而下、由大到小逐步分解成较小的单元,或称之为"模块"(module),即python中的函数(function)
★ 三种控制流程
① 顺序结构
② 选择结构(if)
③ 重复结构

7.面向对象程序设计

面向对象程序设计(Object-Oriented Programming, OOP)的重点是强调程序的可读性(Readability)、重复实用性(Reusability)与扩展性(Extension)。

封装(Encapsulation)

*️⃣用"类"来实现"抽象数据类型"

继承(Code Reusability)

*️⃣允许代码重复使用

多态(Polymorphism)

*️⃣pass

上一篇 下一篇

猜你喜欢

热点阅读