数据结构与算法-问题求解
数据结构与算法
第一章 概论
1.1 问题求解
- 编写计算机程序的目的?
- 解决实际的应用问题
- 问题抽象
- 分析和抽象任务需求,建立问题模型
- 数据抽象
- 确定恰当的数据结构表示数学模型
- 算法抽象
- 在数据模型的基础上设计合适的算法
- 数据结构+算法,进行程序设计
- 模拟和解决实际问题
设计方法:问题求解-->数据结构-->算法理论和数据模型
逻辑 存储 运算
农夫过河 菜 羊 狼
- 问题抽象:人狼羊菜乘船过河
- 只有人能撑船
- 船只有两个位置(包括人)
- 狼羊、羊菜不能在没有人时共处
- 数据抽象:图模型
- 不合理状态:狼羊、人菜、羊菜、人狼、狼羊菜、人
- 顶点表示“原岸状态”------10种(包括“空”)
- 边:一次合理的渡河操作实现的状态转变
- 数据结构
- 相邻矩阵
- 算法抽象
- 最短路径
思考:问题求解过程
- 农夫过河问题----最短路径模型
- 问题抽象?
- 数据抽象?
- 算法抽象?
- 不妨编程序模拟实现
- 还有其他模型吗?
本文来自博客园,作者:寻月隐君,转载请注明原文链接:https://www.cnblogs.com/QiaoPengjun/p/15992458.html