
# 最短路径算法（Shortest Path）
#### 概述
最短路径算法（Shortest Path）用以解决图论研究中的一个经典算法问题，旨在寻找图中两节点之间的最短路径。
#### 适用场景
最短路径算法（Shortest Path）适用于路径设计、网络规划等场景。
#### 参数说明
表1最短路径算法（Shortest Path）参数说明 
| 参数         | 是否必选 | 说明           | 类型      | 取值范围                                                                                                                                                                                                                                                                                                          | 默认值   |
|:---|:---|:---|:---|:---|:---|
| source     | 是    | 输入路径的起点ID    | String  | -                                                                                                                                                                                                                                                                                                             | -     |
| target     | 是    | 输入路径的终点ID    | String  | -                                                                                                                                                                                                                                                                                                             | -     |
| directed   | 否    | 是否考虑边的方向     | Boolean | true或false                                                                                                                                                                                                                                                                                                    | false |
| weight     | 否    | 边上权重         | String  | 空或字符串 - 空：边上的权重、距离默认为"1"。  - 字符串：对应的边上的属性将作为权重，当某边没有对应属性时，权重将默认为1。 说明： 边上权重应大于0。    | -     |
| timeWindow | 否    | 用于进行时间过滤的时间窗 | Json    | 具体请参见[表2]。 说明： timeWindow目前不支持带weight的最短路，即timeWindow与weight不可同时输入。                                                                                                                                               | -     |
   
 表2timeWindow参数说明 
| 参数         | 是否必选 | 说明              | 类型     | 取值范围                                                                            | 默认值  |
|:---|:---|:---|:---|:---|:---|
| filterName | 是    | 用于进行时间过滤的时间属性名称 | String | 字符串：对应的点/边上的属性作为时间                                                              | -    |
| filterType | 否    | 在点或边上过滤         | String | V：点上 E：边上 BOTH：点和边上 | BOTH |
| startTime  | 否    | 起始时间            | String | Date型字符串或时间戳                                                                    | -    |
| endTime    | 否    | 终止时间            | String | Date型字符串或时间戳                                                                    | -    |
   
#### 注意事项
最短路径算法（Shortest Path）只返回一条最短路径。
#### 示例
计算从Lee节点到Alice节点的一条最短路径。
输入参数source=Lee，target=Alice，weight=weights，directed=false。最短路径会展示在绘图区，JSON结果会展示在查询结果区。
