Description
Given a undirected graph, a node and a target, return the nearest node to given node which value of it is target, return NULL if you can't find.
There is a mapping store the nodes' values in the given parameters.
It's guaranteed there is only one available solution
Example
Example 1:
Input:
{1,2,3,4#2,1,3#3,1#4,1,5#5,4}
[3,4,5,50,50]
1
50
Output:
4
Explanation:
2------3 5
\ | |
\ | |
\ | |
\ | |
1 --4
Give a node 1, target is 50
there a hash named values which is [3,4,10,50,50], represent:
Value of node 1 is 3
Value of node 2 is 4
Value of node 3 is 10
Value of node 4 is 50
Value of node 5 is 50
Return node 4
Example 2:
Input:
{1,2#2,1}
[0,1]
1
1
Output:
2
思路:
类似最短路径,用BFS就可以,因为题目中已经给定一个hashmap,所以可以直接利用该hashmap存储节点的访问信息,不需要自己再建立一个。另外序列化的无向图代表的是每个起点的连边信息,如1,2,3,4代表顶点1与2, 3, 4分别相连。
代码:

网友评论