Grafo orientato

di il
33 risposte

33 Risposte - Pagina 3

  • Re: Grafo orientato

    Inizia a postare un'idea e vediamo insieme se è fatta bene. Naturalmente sai cos'è un grado entrate e uscente no? la soluzione del massimo grado uscente è abbastanza intuitiva, inizia da quella.
  • Re: Grafo orientato

    TheRT0C ha scritto:


    Inizia a postare un'idea e vediamo insieme se è fatta bene. Naturalmente sai cos'è un grado entrate e uscente no? la soluzione del massimo grado uscente è abbastanza intuitiva, inizia da quella.
    Ma se io voglio stampare il grado uscente ed entrante di ogni vertice cosi e corretto solo che è iterativo
    
    void grado(struct TList *G[], int W[MAX][2], int n) {
     int i, j;
     
     /* inzialiazzo la matrice con tutti gli elementi a zero */
     for (i=0; i<n; i++) {
      for (j=0; j<2; j++) {
          W[i][j]=0;
      }
     }
     
     struct TList *p;
     for (i=0; i<n; i++) {
      p = G[i];
      while (p != NULL) {
       W[i][1]++;        /* incremento di 1 il numero di nodi uscenti "OUT" */
       W[p->target][0]++;  /* incremento di 1 il numero di nodi entranti "IN" */
       p = p->next;
      }
     }
     return;
    }
    
    
    /* stampa matrice di interi */
    void stampa_grado(int W[MAX][2], int n){
     int i, j;
     for (i=0;i<n;i++) {
      printf("stampo grado IN e OUT nodo %d: ", i);
      for (j=0; j<2; j++) {
       printf("%d ", W[i][j]);
      }
      printf("\n");
     }
     return;
    }
    
  • Re: Grafo orientato

    Non capisco come mai la tua implementazione delle strutture cambia. Hai testato la funzione grado e stampa grafo? sei sicura che funzioni?
  • Re: Grafo orientato

    TheRT0C ha scritto:


    Non capisco come mai la tua implementazione delle strutture cambia. Hai testato la funzione grado e stampa grafo? sei sicura che funzioni?
    no non funziona...e non va bene perché è iterativa
Devi accedere o registrarti per scrivere nel forum
33 risposte