[C]array di vertici con grado in uscita minore
nel metodo che ho riportato sotto trovo uno dei vertici di un grafo con grado in uscita minore e mi faccio passare il vertice con pos. come posso modificarlo in modo da mettere in un array tutti i vertici(pos) che hanno grado minore?
void trovaOutdegreeMinore(){
int min=outdegrees[0],i;
for(i=0;i<n;i++)
{
if(outdegrees[i]<min)
{
min=outdegrees[i];
pos=i;
}
}
}
Risposte
Trova il valore minimo e nel frattempo conti quante volte si ripete. Crei un'array della dimensione giusta e quindi cerchi nell'array gli elementi che possiedono quel valore e li carichi nell'array.
mi potresti scrivere il codice che mi hai descritto? io ho fatto una modifica dove se nAdj==minore pos2=i, in questo caso pos2 mi dice se cè un altro vertice con grado minore, però mi sembra non molto corretto e dovrei inserire in un array tipo[pos,pos2] .
void trovaOutdegreeMinore(){
int min=outdegrees[0],i,a,min2,pos2;
for(i=0;i<n;i++)
{
if(outdegrees[i]<min )
{
min=outdegrees[i];
pos=i;
}
if(nAdj[i]==min )
{
pos2=i;
}
}