程式語言 - LeetCode - C - 547. Number of Provinces



參考資訊:
https://blog.csdn.net/navicheung/article/details/135835250

題目:


解答:

void dfs(int **isConnected, int *size, int idx, int *visited)
{
    int i = 0;

    visited[idx] = 1;
    for (i = 0; i < size[idx]; i++) {
        if (!visited[i] && isConnected[idx][i]) {
            dfs(isConnected, size, i, visited);
        }
    }
}

int findCircleNum(int** isConnected, int isConnectedSize, int* isConnectedColSize)
{
    #define MAX_SIZE 200

    int i = 0;
    int r = 0;
    int visited[MAX_SIZE] = { 0 };

    for (i = 0; i < isConnectedSize; i++) {
        if (!visited[i]) {
            r += 1;
            dfs(isConnected, isConnectedColSize, i, visited);
        }
    }
    return r;
}