合肥学院
计算机科学与技术系
1、问题分析和任务定义
题目:已知有3个容量分别为3kg,5kg和8kg且没有刻度的酒瓶3kg和5kg的瓶子均装满了酒。而8kg的瓶子为空。现要求仅用这3个酒瓶将这些酒均分为两个4kg,并分别装入5kg和8kg的瓶子中。
若要完成题目的要求,首先需要选择一个数据结构表示酒杯数,有3个酒杯并且通过子函数可以输入容器的容量,由题意可知输入的酒杯的容量分别为3、5、8,起始状态下酒杯的装酒数为3、5、0,最终经过转换变为0、4、4。其中每个酒杯的装酒数不得超过容器的容量,可以采取回溯递归的思路。每经过一次转换就覆盖前面的状态,直至最终变为需要的状态为止。
2、数据结构的选择和概要设计
1.数据结构的选择
模型描述:由于涉及状态之间的转化,因此可以用图模型进行求解。把每次可分的状态抽象为一个图结点,按照图的有关知识去求解。
本题采用邻接表法存储图的各个顶点信息,然后用深度优先搜索遍历的方法,得到所有的解。整个程序的实现较简单,属于图应用的范畴。因此在遇到求解搜索路径的问题时,我们不妨从图模型的角度去考虑问题,把有关问题抽象为图模型。通过图模型去思考该类问题地解法可能会更简单。因此要深刻理解图方面的知识,尤其是图的深度优先搜索和图的广度优先搜索的应用。
提供的思路为回溯算法的设计方法:回溯是一种系统的搜索问题解答的方法(常见的是求解迷宫老鼠的问题);其
您可能关注的文档
最近下载
- DIN 267-27-2024(中文) 带预粘合涂层的钢制螺钉、螺栓和螺柱 技术规范.docx
- 医学课件-中西医结合治疗皮肤病第18讲特应性皮炎的诊断治疗.pptx VIP
- 子痫及先兆子痫急救诊疗指南(2025).docx VIP
- 特应性皮炎的诊断与治疗.pptx VIP
- 2026版本《住宅项目规范》GB 55038实施指南.pptx
- 儿童特应性皮炎的阶梯治疗与皮肤屏障修复.pptx VIP
- 儿童特应性皮炎分级治疗指南(2026)解读.pptx VIP
- 集成电路学院建设方案.docx VIP
- REACH 法规 中文版 完整原文(2026 年修订版).docx VIP
- 2026年贵州省中考数学试卷(含答案详解)原版.pdf
原创力文档

文档评论(0)