首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

鄰接矩陣存儲有向圖計算出度為 0 頂點數:C++ 完整實現

     編輯:程式設計綜合問答

輸入頂點數 n、邊數 m,再輸入 m 條邊 (u, v),輸出出度為 0 的頂點個數。

#include <iostream>
#include <cstring>
using namespace std;
#define MAXN 105
int n, m, Edge[MAXN][MAXN];
int main() {
    while (cin >> n >> m, n || m) {
        memset(Edge, 0, sizeof(Edge));
        for (int i = 0; i < m; i++) {
            int u, v; cin >> u >> v;
            Edge[u-1][v-1] = 1; // 有向邊
        }
        int cnt = 0;
        for (int i = 0; i < n; i++) {
            int outDeg = 0;
            for (int j = 0; j < n; j++) outDeg += Edge[i][j];
            if (outDeg == 0) cnt++;
        }
        cout << cnt << endl;
    }
    return 0;
}

測試輸入以 0 0 結束。核心:出度 = 行和。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved