def dls(graph, node, limit, visited):
    visited[node] = True
    print(node, end=" ")

    if limit == 0:
        return

    for i in range(len(graph)):
        if graph[node][i] == 1 and not visited[i]:
            dls(graph, i, limit - 1, visited)

graph = [
    [0,1,1,0],
    [1,0,1,1],
    [1,1,0,0],
    [0,1,0,0]
]

limit = 2
visited = [False] * len(graph)

dls(graph, 0, limit, visited)