public static void main(String[] args) {
        System.out.println(new NetworkDelay().networkDelayTime(
                new int[][] {
                        { 1, 2, 1 },
                        { 2, 3, 7 },
                        { 1, 3, 4 },
                        { 2, 1, 2 },
                        },
                3, 2
        ));
        System.out.println(new NetworkDelay().networkDelayTime(
                new int[][] {
                        { 1, 2, 1 },
                        { 2, 1, 3 },
                        },
                2, 2
        ));
        System.out.println(new NetworkDelay().networkDelayTime(
                new int[][] {
                        { 2, 1, 1 },
                        { 2, 3, 1 },
                        { 3, 4, 1 },
                        },
                4, 2
        ));
        System.out.println(new NetworkDelay().networkDelayTime(
                new int[][] {
                        { 1, 2, 1 },
                        { 2, 3, 2 },
                        { 1, 3, 2 },
                        },
                3, 1
        ));
        System.out.println(new NetworkDelay().networkDelayTime(
                new int[][] {
                        { 1, 2, 1 },
                        { 2, 3, 7 },
                        { 1, 3, 4 },
                        { 2, 1, 2 },
                        },
                3, 1
        ));

    }
Why Did you create this class? what does it do?
src/problems/medium/NetworkDelay.java