Диаметр, как в, наибольшее минимальное расстояние между любыми двумя точками на графике.
Чтобы решить эту проблему, просто сделаем BFS с любого узла, а затем выберем узел среди самых дальних узлов исходного узла. Сделайте BFS на этом новом узле, и тогда самое большое расстояние здесь - это диаметр графика.
В другом посте говорится о взвешенных ориентированных графах. Это строго для невзвешенных. Хотя тот же алгоритм может работать здесь, я спрашиваю, можем ли мы сделать это более эффективно, используя предложенный здесь go.