2014年春季数据结构课程实习
- 格式:doc
- 大小:40.50 KB
- 文档页数:3
第1篇一、前言数据结构是计算机科学中的基础课程之一,它主要研究数据的组织、存储、检索和维护方法。
通过学习数据结构,我们可以更好地理解和设计算法,提高计算机程序的效率。
本学期,我参加了数据结构实践课程,通过动手实践,我对数据结构有了更深入的理解和认识。
以下是我对本次实践课程的总结报告。
二、课程内容概述本次数据结构实践课程主要涵盖了以下内容:1. 线性表:包括顺序表和链表,以及它们的插入、删除、查找等操作。
2. 栈和队列:栈是一种后进先出(LIFO)的数据结构,队列是一种先进先出(FIFO)的数据结构。
3. 树:包括二叉树、二叉搜索树、平衡二叉树等,以及它们的遍历、查找、插入、删除等操作。
4. 图:包括图的邻接矩阵和邻接表表示,以及图的遍历、最短路径、最小生成树等算法。
5. 查找算法:包括二分查找、散列表查找等。
6. 排序算法:包括冒泡排序、选择排序、插入排序、快速排序、归并排序等。
三、实践过程1. 课前准备在课程开始之前,我认真阅读了教材和参考资料,对数据结构的基本概念和理论有了初步的了解。
同时,我学习了C++、Java等编程语言,为实践课程打下了良好的基础。
2. 实践环节(1)线性表:我实现了顺序表和链表,并实现了插入、删除、查找等操作。
在实现过程中,我学习了数组和指针的使用,提高了我的编程能力。
(2)栈和队列:我实现了栈和队列,并实现了入栈、出栈、入队、出队等操作。
通过实践,我了解了栈和队列在实际应用中的优势。
(3)树:我实现了二叉树、二叉搜索树和平衡二叉树,并实现了查找、插入、删除等操作。
在实现过程中,我学习了递归的使用,提高了我的算法设计能力。
(4)图:我实现了图的邻接矩阵和邻接表表示,并实现了图的遍历、最短路径、最小生成树等算法。
通过实践,我了解了图在实际应用中的广泛用途。
(5)查找算法:我实现了二分查找和散列表查找,并比较了它们的优缺点。
在实现过程中,我学会了如何分析算法的效率。
(6)排序算法:我实现了冒泡排序、选择排序、插入排序、快速排序和归并排序,并比较了它们的性能。
数据结构实训自我总结在进行数据结构实训的过程中,我深刻地体会到了数据结构在实际应用中的重要性和价值。
通过实际操作,我对数据结构的理论知识有了更深入的理解,并且学会了如何将数据结构应用于实际问题的解决中。
首先,在实训过程中,我学习了各种数据结构的基本概念、特点和应用场景。
例如,线性结构、树形结构、图形结构等等。
通过学习这些知识,我能够根据问题的特点选择最合适的数据结构,并且能够合理地设计和实现相应的算法。
其次,在实训过程中,我学会了如何使用编程语言来实现数据结构和算法。
我们通过编写代码来实现各种数据结构,例如链表、栈、队列、二叉树等等。
在实现的过程中,我学会了如何使用各种基本的数据结构和算法,例如数组、指针、递归、迭代等等。
通过编写代码,我对数据结构和算法的运行原理和实现细节有了更深入的理解。
另外,在实训过程中,我也学习了如何分析和解决实际问题。
我们需要根据给定的问题,设计和实现相应的数据结构和算法,并且进行相应的测试和调试。
通过这个过程,我学会了如何分析问题的特点,设计相应的解决方案,并且进行相应的实现和测试。
在实际操作中,我遇到了很多问题和困难,但是通过不断地思考和努力,我最终成功地解决了这些问题,并且取得了不错的成果。
最后,在实训过程中,我也意识到了数据结构的学习和实践并不是一蹴而就的。
在实训中,我发现自己的理论知识还不够扎实,还需要不断地学习和提高。
同时,我也发现自己的编程能力还有待提高,需要更多地进行实践和练习。
因此,我决定在以后的学习中,继续深入学习数据结构的相关知识,并且不断地进行实践和提高自己的编程能力。
总的来说,通过数据结构实训,我对数据结构的理论知识有了更深入的理解,学会了如何将数据结构应用于实际问题的解决中,并且提高了自己的编程能力和问题解决能力。
我相信,在今后的学习和工作中,我能够更好地应用数据结构的知识,解决更加复杂和实际的问题。
同时,我也会继续学习和提高自己的能力,为自己的未来发展打下坚实的基础。
第1篇一、引言随着计算机科学的不断发展,数据结构作为计算机科学中的基础课程,其重要性日益凸显。
通过对数据结构的深入学习与实践,可以提高编程能力,优化算法设计,提高程序运行效率。
本报告将对我所进行的数据结构实践过程进行总结,以期为今后的学习和工作提供借鉴。
二、实践过程1. 实践目的本次实践旨在通过学习数据结构的基本概念、原理和方法,掌握常见数据结构的实现,提高编程能力和算法设计能力。
2. 实践内容(1)线性表:学习了线性表的基本概念、顺序存储和链式存储两种实现方式,掌握了插入、删除、查找等操作。
(2)栈与队列:学习了栈和队列的基本概念,掌握了栈和队列的顺序存储和链式存储两种实现方式,以及入栈、出栈、入队、出队等操作。
(3)树:学习了树的基本概念,掌握了二叉树、二叉搜索树、平衡二叉树等常见树结构的实现,以及遍历、查找、插入、删除等操作。
(4)图:学习了图的基本概念,掌握了图的邻接矩阵和邻接表两种存储方式,以及图的遍历、最短路径、最小生成树等算法。
(5)查找与排序:学习了查找与排序的基本概念,掌握了二分查找、快速排序、归并排序、堆排序等常见算法。
3. 实践方法(1)理论学习:通过查阅相关书籍、网络资源,对数据结构的基本概念、原理和方法进行深入学习。
(2)编程实践:使用C/C++、Java等编程语言,实现各种数据结构,并进行调试和优化。
(3)算法分析:对实现的算法进行时间复杂度和空间复杂度分析,以提高程序运行效率。
(4)项目实践:结合实际应用场景,设计并实现数据结构在具体问题中的应用。
三、实践成果1. 掌握了数据结构的基本概念、原理和方法。
2. 能够熟练使用C/C++、Java等编程语言实现常见数据结构。
3. 能够根据实际问题选择合适的数据结构,并设计高效算法。
4. 提高了编程能力和算法设计能力。
四、实践心得1. 数据结构是计算机科学的基础,对提高编程能力和算法设计能力具有重要意义。
2. 理论学习与实践相结合,才能更好地掌握数据结构。
数据结构实习报告
实习报告:数据结构实习
实习时间:20xx年xx月xx日-20xx年xx月xx日
实习单位:xxx公司
实习内容:
1. 数据结构基础学习:在实习中,我首先对数据结构进行了系统的学习。
通过阅读相关书籍和参与公司内部培训,我对常用的数据结构如链表、栈、队列、树等有了更深入的了解,并了解了它们的特点、用途以及操作方法。
2. 数据结构算法实践:在实习中,我有机会参与公司的项目开发工作,从中学习和应用了各种数据结构算法。
例如,在一个项目中,我利用栈的特点,实现了一个基于深度优先搜索的路径查找算法。
这个算法在处理大规模数据时表现出了良好的性能。
3. 数据结构优化:在项目中,我发现某些数据结构的性能不够理想,导致程序运行速度较慢。
于是我对这些数据结构进行了分析,并提出了相应的优化方案。
通过使用更加高效的数据结构,我成功地提升了程序的性能。
4. 数据结构的应用:在实习中,我也有机会应用数据结构解决实际问题。
例如,在一个项目中,我使用了二叉查找树来实现一个关键词搜索功能,通过对数据进行合理的排列,提高了搜索的效率。
实习总结:
通过这次实习,我不仅对数据结构有了更深入和系统的了解,还学到了如何将数据结构应用到实际的项目开发中。
在实践中,我不断地提升了自己的编码能力和问题解决能力。
同时,与团队成员的合作也让我更好地理解了团队协作的重要性。
通过实习,我对数据结构的实际应用有了更深刻的认识,并且对软件开发工作有了更全面的了解。
我相信这次实习对我的专业能力和职业发展都会产生积极的影响。
第1篇一、引言随着计算机科学的不断发展,数据结构作为计算机科学的基础学科,其重要性日益凸显。
为了提高我们对数据结构理论知识的理解和应用能力,我们开展了为期一个月的数据结构本科实践活动。
本次实践活动旨在通过实际操作,加深对数据结构理论的理解,提高编程能力和问题解决能力。
以下是本次实践活动的详细报告。
二、实践目的与内容1. 实践目的(1)巩固和深化对数据结构基本概念和原理的理解;(2)提高编程能力和问题解决能力;(3)培养团队合作精神,提高团队协作能力;(4)熟悉常见数据结构的实现和应用。
2. 实践内容本次实践活动主要包括以下内容:(1)选择合适的数据结构,如线性表、栈、队列、链表、树、图等;(2)实现这些数据结构的基本操作,如插入、删除、查找、遍历等;(3)分析各种数据结构的性能特点,对比其优缺点;(4)结合实际应用场景,设计并实现相关算法。
三、实践过程1. 线性表首先,我们选择了线性表作为实践的第一步。
线性表是一种基本的数据结构,它由一系列元素组成,元素之间存在一对一的线性关系。
我们实现了线性表的基本操作,包括插入、删除、查找和遍历。
在实现过程中,我们使用了数组作为存储结构,并分析了其时间复杂度和空间复杂度。
2. 栈与队列接着,我们学习了栈和队列这两种特殊的线性表。
栈是一种后进先出(LIFO)的数据结构,而队列是一种先进先出(FIFO)的数据结构。
我们分别实现了栈和队列的基本操作,并通过具体实例展示了它们在实际应用中的优势。
3. 链表链表是一种更为灵活的数据结构,它由一系列节点组成,每个节点包含数据和指向下一个节点的指针。
我们实现了链表的基本操作,包括插入、删除、查找和遍历。
通过链表的学习,我们加深了对指针的理解,并掌握了动态内存分配的技巧。
4. 树与图在掌握了线性表和链表的基础上,我们进一步学习了树和图这两种非线性数据结构。
树是一种层次结构,它由根节点和若干子树组成;图则是一种由节点和边组成的数据结构,节点之间可以是任意关系。
数据结构实训总结数据结构实训总结一、引言在数据结构实训中,我们学习了各种数据结构的概念、原理和实现。
通过实际编码和调试,我们对数据结构有了更深入的理解和掌握。
本文档旨在总结我们在实训中的学习和经验,以便于今后的复习和参考。
二、实训目标及背景本次实训的主要目标是熟悉并掌握常用的数据结构和算法,培养编码能力以及解决问题的思维方式。
实训背景是为了满足实际应用场景的需求,例如在图书馆管理系统中实现书籍的借还功能,需要使用到队列等数据结构。
三、实训过程1.熟悉实验要求和环境在实训开始前,我们仔细阅读了实验要求,了解了需要实现的功能以及所需的编程环境。
我们安装了相关的开发工具,包括编译器和调试器,并进行了简单的测试和调试。
2.数据结构的学习和实现我们系统地学习了各种数据结构的概念、特点和应用,并通过编码实现了它们。
这些数据结构包括链表、栈、队列、树、图等。
我们深入研究了它们的实现原理和操作方法,并通过编写相关的代码加深理解。
3.算法的学习和实现在掌握了基本数据结构后,我们学习了常用的算法,包括排序算法、查找算法等。
我们通过编码实现了这些算法,并进行了性能测试和优化。
在实现过程中,我们注意到算法复杂度的分析和优化对程序的性能起到了重要的作用。
4.实验结果的验证和调试在实现过程中,我们不断进行测试和调试,以确保程序的正确性和稳定性。
我们编写了大量的测试用例,并模拟了各种场景和边界条件进行测试。
我们还使用调试器进行了断点调试,定位和修复了程序中的bug。
四、实训心得通过这次数据结构实训,我们不仅学到了知识,还培养了编码能力和解决问题的思维方式。
我们深入了解了各种数据结构和算法的原理和应用,并通过实际编码加深了理解。
我们还学会了如何进行测试和调试,以及如何优化程序的性能和稳定性。
五、附件本文档附上了实训所使用的代码和测试数据。
请参阅附件以获取更详细的信息。
六、法律名词及注释1.版权:指对原创作品享有的独占性权利,包括复制、修改、发行等。
一、引言随着计算机科学技术的飞速发展,数据结构作为计算机科学的核心课程之一,在软件开发、系统设计、算法研究等领域扮演着至关重要的角色。
为了更好地掌握数据结构的基本原理和应用,提高我们的编程能力和解决问题的能力,我们进行了为期一个月的数据结构专题实训。
以下是本次实训的总结报告。
二、实训目标与内容1. 目标本次实训旨在通过理论与实践相结合的方式,使学员掌握以下内容:(1)熟练掌握常见数据结构(线性表、栈、队列、链表、树、图等)的基本概念、性质和操作。
(2)了解数据结构在计算机科学中的应用,如排序、查找、图论等。
(3)提高编程能力,能够运用数据结构解决实际问题。
2. 内容(1)线性表:包括顺序表和链表的实现、操作和应用。
(2)栈与队列:包括栈和队列的顺序存储和链式存储实现、操作和应用。
(3)树与二叉树:包括二叉树的定义、性质、遍历、二叉搜索树、平衡二叉树等。
(4)图:包括图的定义、性质、图的遍历、最小生成树、最短路径等。
(5)排序与查找:包括冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序等。
三、实训过程1. 理论学习在实训过程中,我们首先进行了理论课程的学习,通过课堂讲解、自学和讨论,掌握了数据结构的基本概念、性质和操作。
2. 编程实践在理论学习的基础上,我们进行了大量的编程实践,通过实现各种数据结构,加深了对数据结构概念的理解。
以下列举部分实训内容:(1)线性表:实现了顺序表和链表的插入、删除、查找等操作。
(2)栈与队列:实现了栈和队列的顺序存储和链式存储,并实现了入栈、出栈、入队、出队等操作。
(3)树与二叉树:实现了二叉树的遍历、二叉搜索树的插入、删除、查找等操作,以及平衡二叉树的实现。
(4)图:实现了图的邻接矩阵和邻接表存储,并实现了图的遍历、最小生成树、最短路径等操作。
(5)排序与查找:实现了冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序等排序算法,以及二分查找、线性查找等查找算法。
数据结构实习心得在大学期间,我有幸参与了一家科技公司的数据结构实习项目。
这是一次非常有意义的经历,不仅让我在实践中巩固了数据结构的知识,还提高了我的编程能力和解决问题的能力。
以下是我在实习期间的心得体会。
首先,实习项目的开始让我感到有些迷茫。
虽然在学校里学习了数据结构的基础知识,但将这些知识应用到实际项目中却是一个全新的挑战。
我需要从零开始,先了解公司的业务需求,然后根据需求设计并实现相应的数据结构和算法。
在这个过程中,我发现了学校所讲授的数据结构知识与实际应用之间的差距。
有时候,在解决实际问题时需要额外的工作,如处理大规模数据、优化性能等。
这对我来说是一次非常有益的经历,让我认识到了知识在实际应用中的限制,并激发了我对深入学习的兴趣。
其次,实习项目让我意识到了团队合作的重要性。
在项目中,我不仅仅是一个人在解决问题,而是与团队其他成员紧密合作。
每个人都有自己的优势和专业领域,在团队中相互合作,共同解决难题,才能取得最好的结果。
我在与团队成员的沟通交流中学到了很多,他们的经验和见解使我受益匪浅。
此外,通过与其他人的合作,我学会了更好地组织代码和文档,使得协作更加高效和有条理。
此外,实习项目还给了我很好的机会提高编程能力。
在实践中,我需要不断地编写和修改代码,修复错误和优化性能。
这个过程让我更加熟悉编程语言,加深了对算法和数据结构的理解。
我学到了很多关于代码设计和编程风格的经验,包括如何写出清晰、可读性高和可维护的代码。
在这个过程中,我还学到了如何使用调试工具和性能分析工具,以便更好地定位和解决问题。
这些经验和技能将对我今后的职业发展产生积极的影响。
最后,实习期间我也面临了一些挑战和困难。
在解决复杂的问题时,我有时会遇到困惑和难以解决的情况。
但我通过和团队成员的讨论和交流,以及查阅相关的资料和文献,最终克服了这些困难。
这个过程让我学会了坚持和追求解决问题的能力,同时也锻炼了我的自学能力和解决问题的能力。
一、实习背景随着计算机技术的不断发展,数据结构作为计算机科学的基础知识,在各个领域都得到了广泛的应用。
为了更好地理解和掌握数据结构的知识,提高编程能力,我在暑假期间进行了一次数据结构实习。
本次实习主要针对线性表、栈、队列、树、图等基本数据结构进行了实践操作,通过实际编程实现数据结构的操作和应用。
二、实习目的1. 深入理解数据结构的基本概念、原理和算法;2. 掌握数据结构的常用操作和编程实现;3. 培养编程思维和解决问题的能力;4. 提高团队协作和沟通能力。
三、实习内容1. 线性表线性表是数据结构中最基本的结构之一,主要包括顺序表和链表。
在实习过程中,我实现了顺序表和链表的基本操作,如插入、删除、查找等。
2. 栈和队列栈和队列都是一种特殊的线性表,具有先进后出(FILO)和先进先出(FIFO)的特性。
我分别实现了栈和队列的入栈、出栈、入队、出队等基本操作。
3. 树树是一种层次结构,包括二叉树、二叉搜索树、平衡树等。
在实习过程中,我重点学习了二叉树和二叉搜索树的基本操作,如插入、删除、查找等。
4. 图图是一种复杂的数据结构,包括无向图和有向图。
我实现了图的邻接矩阵和邻接表表示,并实现了图的深度优先搜索(DFS)和广度优先搜索(BFS)算法。
5. 应用实例在实习过程中,我还结合实际应用场景,实现了以下实例:(1)计算两个字符串的相似度,使用编辑距离算法;(2)实现一个简单的文件压缩和解压缩工具,使用哈夫曼树进行编码和解码;(3)实现一个基于二叉搜索树的字典,支持插入、删除、查找等操作。
四、实习成果1. 熟练掌握了线性表、栈、队列、树、图等基本数据结构;2. 能够根据实际需求选择合适的数据结构,并实现其操作;3. 提高了编程能力和问题解决能力;4. 具备了一定的团队协作和沟通能力。
五、实习体会1. 数据结构是计算机科学的基础,掌握数据结构对于提高编程能力至关重要;2. 实践是检验真理的唯一标准,通过实际编程实现数据结构,能够加深对知识点的理解;3. 团队协作和沟通能力在实习过程中得到了锻炼,为今后的工作奠定了基础;4. 在实习过程中,遇到问题时要善于查阅资料、请教他人,培养自己的自学能力。
数据结构实习报告范文精选范文:数据结构实习报告(共2篇)一、需求分析1、程序所实现的功能;2、程序的输入,包含输入的数据格式和说明;3、程序的输出,程序输出的形式;4、测试数据,如果程序输入的数据量比较大,需要给出测试数据;5、合作人及其分工二、设计说明1、主要的数据结构设计说明;2、程序的主要流程图;3、程序的主要模块,要求对主要流程图中出现的模块进行说明4、程序的主要函数及其伪代码说明(不需要完整的代码);5、合作人设计分工三、上机结果及体会1、合作人编码分工2、实际完成的情况说明(完成的功能,支持的数据类型等);3、程序的性能分析,包括时空分析;4、上机过程中出现的问题及其解决方案;5、程序中可以改进的地方说明;6、程序中可以扩充的功能及设计实现假想;说明:1、如果程序比较大,可以将设计说明分为概要设计和详细设计两部分。
概要设计主要负责程序的流程、模块、抽象数据类型设计;详细设计负责程序的数据类型定义和主要函数的说明。
2、设计说明中,不需要写出代码或者模块的详细代码,只需要写出主要函数的伪代码说明。
[数据结构实习报告(共2篇)]篇一:数据结构实训报告《数据结构》课程设计报告题目:班级:姓名:学号:指导教师:实现两个链表的合并08计管(2)班肖丽娜20xx年6月17日目录一、课程设计的性质、目的及要求 (3)一、课程设计性质 (3)二、设计目的 (3)三、设计要求 (3)二、任务描述 (3)三、软件环境 (4)四、算法设计思想及流程图 (4)一、算法设计思想 (4)二、流程图 (5)五、源代码 (6)六、运行结果 (9)七、收获及体会 (10)一、课程设计的性质、目的及要求一、课程设计性质性质:数据结构设计是《数据结构》课程的实践环节,也是我院各专业必修的计算机技术基础课程之一。
二、设计目的目的:课程设计为学生提供了一个既动手又动脑,独立实践的机会,学生将课本上的理论知识和实际有机的结合起来,锻炼学生分析、解决较复杂问题的能力,本次课程设计,也是为了锻炼我们应用编程语言的语法规则和已经掌握的一些较为简单的算法,自己解决一个较简单的课题,初步积累编程经验。
专业认知型课程实习题目及要求
[选好题目]:
每人必须从下面5题中任意选一题作为设计,独立思考,认真完成,课程设计中各任务的设计和调试要求独立完成,遇到问题可以讨论,但不可以拷贝。
[课程实习报告]:
(保存在word 文档中,文件名要求按照"班级_姓名_学号_课程实习报告"起名,如文件名为"12信科2张三_001_课程实习报告".doc )按照课程实习的具体要求建立的功能模块,每个模块要求按照如下几个内容认真完成;
(1)需求分析:
在该部分中叙述每个模块的功能要求
(2)概要设计
在此说明每个部分的算法设计说明(可以是描述算法的流程图),每个程序中使用的存储结构设计说明(如果指定存储结构请写出该存储结构的定义)。
(3)详细设计
各个算法实现的源程序,对每个题目要有相应的源程序(可以是一组源程序,每个功能模块采用不同的函数实现)源程序要按照写程序的规则来编写。
要结构清晰,重点函数的重点变量,重点功能部分要加上清晰的程序注释。
(4)调试分析
测试数据,测试输出的结果,时间复杂度分析,和每个模块设计和调试时存在问题的思考(问题是哪些?问题如何解决?),算法的改进设想。
[课程实习总结]:
(保存在word 文档中)总结可以包括: 课程实习过程的收获、遇到问题、遇到问题解决问题过程的思考、程序调试能力的思考、对数据结构这门课程的思考、在课程实习过程中对《数据结构》课程的认识等内容。
[课程实习提交]:
提交内容:课程实习报告(具体格式见题目后附录),统一采用A4纸双面打印输出。
报告电子版和程序由学委收齐后发教师邮箱。
提交时间:第17周星期5前(6月13日),无故迟交无成绩!检查时间:第17周星期5(6月13日)下午3点在机房。
注意事项:1:请同学们注意课程实习报告的提交时间。
2:请按照附件提供的格式组织课程实习,并附上自评分。
【课程实习题目】:
1、利用随机函数产生两列(每列个数均为200且每个数均不小于10) 的随机整数,对这两列整数写一个程序实现如下功能操作:
(1) 两列整数在顺序存储方式中,
(a)找出这两列数中的素数;(b) 把两列数中相同的数转化为二进制数输出。
(2) 两列整数在链表存储方式中,
(a)统计两链表中相同元素的个数;(b)合并这两个链表为一个;(c)分别删除第一链表中能被2整除的结点和第二个链表中能被3整除的结点。
2、利用随机函数产生127个(不大于200且各不相同的)随机整数,用这些整数来生成一棵二树:
(1) 分别对二叉树进行先序遍历,中序遍历和后序列遍历输出树中结点元素序列。
注意:先序遍历输出要求采用非递归来实现。
(2) 输出二叉树中从根到叶子结点间整数和最小的结点路径序列。
3、题目:校园导游图
设计一个校园导游程序,随着华农大校园建设越来越漂亮,春季来赏花的游客逐年攀升,请为来访客人提供各种信息查询任务。
基本要求:
(1) 设计你所在学校的校园平面图,所含景点不少于10个。
以图中顶点表示校内各景点,存放景点名称、代号、简介信息,以边表示路权,存放路径长度等相关信息。
(2) 为来访客人提供图中任意景点相关信息的查询(如景点简介,相关交通信息等)
(3) 为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。
4、用下表给出的字符集和频度的实际统计数据建立哈夫曼树,并实现以下报文的编码和译码:“THIS PROGRAM IS MY FA VORITE”
字符A B C D E F G H I J K L M 频度64 13 22 32 103 21 15 47 57 1 5 32 20 字符N O P Q R S T U V W X Y Z 频度57 63 15 1 48 51 80 23 8 18 1 16 1
5 、农夫,狼,羊和菜过河问题
问题描述:有一个农夫带有一条狼,一只羊和一筐菜,想从河的左边乘船去右边,但是由于船太小,每次农夫只能带一样东西过河,而且,如果没有农夫看,则狼会吃羊,羊会吃菜。
问农夫怎样过河才能把每样东西安全送过河。
要求:
(1) 将上面问题用图表示出来;
(2) 选择图的一种存储结构,编写一个自动生成图的算法。
(3) 在(2)的基础上编写求解问题算法的程序。
××××××××××××××××××××××××××××××××××××××课程实习报告格式要求××××××××××××××××××××××××××××××××××××××וA4打印,按统一封面装订,附页码;
•报告正文部分主要内容包括:
(1)选题内容(2)需求分析(3)概要设计
(4)详细设计(5)调试分析(6)系统运行效果图(7)总结(8)参考文献
•课程设计提交内容:课程设计报告(打印稿和电子稿)和源程序代码
•完成截止时间:第17周星期五前(6月13日)
•检查:教师随机抽8位同学检查其完成情况,时间是6月13日下午3点,参加演示的同学视完成情况加2~5分,抽到不来扣3分,其名额可由其他同学代替。
•课程实习提交内容:课程实习报告(打印稿和电子稿)以及源程序代码。
由学习委员收齐后,纸质版报告在检查时提交;电子稿及源程序按姓名学号整理压缩后发到邮箱liang_ru_bing@.
•注:课程实习报告着重说明个人所做工作、成果和体会,报告不得与他人雷同,否则影响自己与他人成绩,严重者无成绩!
请认真对待!。