20182324 2019-2020-1 《数据结构与面向对象程序设计》实验9报告

20182324 2019-2020-1 《数据结构与面向对象程序设计》实验9报告

课程:《程序设计与数据结构》
班级: 1823
姓名: yyh
学号: 20182324
实验教师:王志强
实验日期:2019年12月2日
必修/选修: 必修

1.实验内容

  • 1.初始化:根据屏幕提示(例如:输入1为无向图,输入2为有向图)初始化无向图和有向图(可用邻接矩阵,也可用邻接表),图需要自己定义(顶点个数、边个数,建议先在草稿纸上画出图,然后再输入顶点和边数)

  • 2.图的遍历:完成有向图和无向图的遍历(深度和广度优先遍历)

  • 3.完成有向图的拓扑排序,并输出拓扑排序序列或者输出该图存在环

  • 4.完成无向图的最小生成树(Prim算法或Kruscal算法均可),并输出

  • 5.完成有向图的单源最短路径求解(迪杰斯特拉算法)

2. 实验过程及结果

  • (1)根据屏幕提示初始化无向图和有向图

  • (2)完成有向图和无向图的遍历

  • (3)图的拓扑排序

  • (4)无向图的最小生成树

  • (5)图的单源最短路径求解

3. 实验过程中遇到的问题和解决过程

  • 问题:什么是 HashMap
  • 问题解决方案:java.util.HashMap
    在 JDK 帮助文档中这样阐述:基于哈希表的 Map 接口的实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。(除了非同步和允许使用 null 之外,HashMap 类与 Hashtable 大致相同。)此类不保证映射的顺序,特别是它不保证该顺序恒久不变。
    此实现假定哈希函数将元素适当地分布在各桶之间,可为基本操作(get 和 put)提供稳定的性能。迭代 collection 视图所需的时间与 HashMap 实例的“容量”(桶的数量)及其大小(键-值映射关系数)成比例。
    HashMap 的实例有两个参数影响其性能:初始容量加载因子容量 是哈希表中桶的数量,初始容量只是哈希表在创建时的容量。加载因子 是哈希表在其容量自动增加之前可以达到多满的一种尺度。当哈希表中的条目数超出了加载因子与当前容量的乘积时,则要对该哈希表进行 rehash 操作(即重建内部数据结构),从而哈希表将具有大约两倍的桶数。

其他(感悟、思考等)

实验终于结束了!!!接下来专心搞App!!!

参考资料

posted @ 2019-12-08 21:59  Lolipop  阅读(189)  评论(0编辑  收藏  举报