树形结构数据节点A到节点B的方式

需求,根据一个树形结构数据,给数据点A,给数据节点B,求A点到B点中间经过的所有节点。

以下用一个示例图展示其实现方式 

树形结构数据节点A到节点B的方式_第1张图片

 这种需求可以轻易联想到地图,地图点A到点B,需要得到一条最短的路径,程序实现也可以基于此设计思路实现。

实现步骤

  1. 给树形结构的每个节点标记路径,和节点名(唯一ID),如地图上的四川省》成都市》春熙路》小葵花店(节点ID)。
  2. 确定点A和点B的路径节点。
  3. 根据点A找点B的路径点
    1. 根据点A找点B的路径点是否在点A描述的路径节点中,如果有,那么点A中描述的点A到B之间的节点就为路径。
    2. 如果点A中描述的路径中没有点B的节点,那么比较点A和点B描述的路径节点,找出重复的一个节点,这个节点是他们通道的分支点,然后点A到分支点》分支点到点B中间所经过的节点就是他们组成的最短路径。

你可能感兴趣的:(实用函数,树形结构设计)