鄰接矩陣有向圖(二)之 C++詳解
阿新 • • 發佈:2018-12-30
/* * 建立圖(自己輸入資料) */ MatrixDG::MatrixDG() { char c1, c2; int i, p1, p2; // 輸入"頂點數"和"邊數" cout << "input vertex number: "; cin >> mVexNum; cout << "input edge number: "; cin >> mEdgNum; if ( mVexNum < 1 || mEdgNum < 1 || (mEdgNum > (mVexNum * (mVexNum-1)))) { cout << "input error: invalid parameters!" << endl; return ; } // 初始化"頂點" for (i = 0; i < mVexNum; i++) { cout << "vertex(" << i << "): "; mVexs[i] = readChar(); } // 初始化"邊" for (i = 0; i < mEdgNum; i++) { // 讀取邊的起始頂點和結束頂點 cout << "edge(" << i << "): "; c1 = readChar(); c2 = readChar(); p1 = getPosition(c1); p2 = getPosition(c2); if (p1==-1 || p2==-1) { cout << "input error: invalid edge!" << endl; return ; } mMatrix[p1][p2] = 1; } }