乐趣区

关于java:33-数据结构-数组-链表-栈-队列

数组

场景:数量固定,不须要频繁插入删除时。
长处:占用空间小,反对随机拜访。

链表

场景:数量不确定,须要频繁插入删除时。

场景:
1. 浏览器的回退和后退性能
2. 查看符号是否成对呈现({})
3. 反转字符串
4. 保护函数调用(虚拟机栈)

队列

场景:
1. 生产者 - 消费者模型

度:示意一个顶点连着多少边。
入度:指向顶点的边。
出度:顶点指向别的顶点的边。
无权图和带权图:边有权重

图的存储

1 应用矩阵存储,A[X,Y] 示意 x y 两顶点之间的关系

  • 无向图:矩阵内容是角对称的 1 0 1 0
  • 有向图:矩阵内容是不对称的 1 0 1 0

    2 应用链表贮存:

  • 无向图:X-Y-Z- K 示意 x 和 yzk 相连。
  • 有向图:X-Y-X- K 示意 x 指向 yzk

    图的搜寻

    广度优先搜寻:先搜寻 x,而后搜寻 x 间接相连的 xy,xz,而后搜寻隔一层的 xyk,xyj。能够利用队列。

    深度优先搜寻:先搜寻 x,而后搜寻 xy,而后 xyk,而后再 xz。能够利用栈实现。

退出移动版