2017-01-29 1 views
-3

Sagen, ich habe eine vector<int> G[100001]; und ich versuche, einen Graphen mit n Knoten und m Eckpunkte wie folgt zu lesen:Wie man Vektor druckt <int> C++?

f >> n >> m; 
for(int i = 1; i <= m; ++i) 
{ 
    f >> x >> y; 
    G[x].push_back(y); 
    G[y].push_back(x); 
} 

und ich möchte es so etwas drucken:

for(int i = 1; i <= n; ++i) 
    g << G[i] << " "; 
+1

'Vektor G [100001];' ist ein Array von Vektoren, sind Sie sicher, dass das, was Sie wollen? –

+1

Sie sehen diese Schleife, die Sie zum Aufzählen von 'G' codiert haben? Yeah, du brauchst etwas Ähnliches, um * jeden * Vektor 'G [i]' aufzuzählen, während du 'G' aufzählst. – WhozCraig

+0

Array-Indizes (und auch Vektorindizes) gehen von 0 bis N-1. –

Antwort

0

zu Drucken Sie Werte in einem Vektor, dann können Sie tiefgestellten Operator verwenden:

vector<int> v; 
v.push_back(1); 
v.push_back(2); 

cout << v[0] << endl; 

in Ihrem Fall haben Sie eine Reihe von Vektoren so zu drucken die Werte, die Sie dann behandeln sie wie ein zweidimensionales Array:

vector<int> vArray[2]; 
vArray[0].push_back(5); 
vArray[1].push_back(7); 

cout << vArray[0][0] << endl; 
cout << vArray[1][0] << endl; 
Verwandte Themen