Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2000
    Messaggi
    1,175

    [C] complessità tempo e spazio

    Avendo un algoritmo di exchage sort indicato sotto qualcuno mi direbbe su che valori è la complessità di tempo e spazio??? Grazie
    codice:
    #include <stdio.h>
    #include <malloc.h>
    
    /* PROTOTIPO FUNZIONE */
    void ex_sort(float *A, int n);
    
    main() {
    
    /* DICHIARAZIONE VARIABILI */
    int i, n, c;
    float *A;
    
    	/* LETTURA GRANDEZZA ARRAY */
    	printf("Inserire la grandezza n dell'array: ");
    	scanf("%d",&n);
    
    	/* ALLOCAZIONE DINAMICA DELLA MEMORIA */
    	if(!(A = (float *)malloc(n*sizeof(float))))
    	abort();
    
    	/* LETTURA DI TUTTI GLI ELEMENTI DELL' ARRAY A */
    	printf("\nInserire uno per uno tutti gli elementi dell'array...\n");
    	   for (i=0; i<n; i++){
    	      printf("Inserire il %d° elemento: ", c=i+1);
    	      scanf("%f", &A[i]);
    	   }
    
    	/* RICHIAMO DELLA FUNZIONE */
    	ex_sort(A, n);
    
    	/* STAMPA A VIDEO DELL'ARRAY ORDINATO */
    	printf("\nL'array A è ora ordinato come segue:\n");
    	for (i=0; i<n; i++)
    	printf("%f\n", A[i]);
    }
    
    /****************** SPECIFICHE FUNZIONE *************************/
    void ex_sort(float *A, int n){
    int p,K,i,var;
    	p = n;
    	do {
    	   K = 0;
    	   for(i=0; i<n-1; i++)
    	   {
    	      if(A[i]>A[i+1])
    	      {
    	      var = A[i];
    	      A[i] = A[i+1];
    	      A[i+1] = var;
    	             K = 1;
    	             p = i+1;
    	      }
    	   }
    	n = p;
    	   } while (K==1);
    }

  2. #2
    Utente di HTML.it L'avatar di infinitejustice
    Registrato dal
    Nov 2001
    residenza
    Barcelona
    Messaggi
    772
    Sembra Bubblesort con sentinella (k) e limite (p)
    :master: perche entrambi?


    Spaziale è Θ(n) (in loco)
    Temporale direi Ω(n) O(n²)

    Qualcuno piu fresco su algoritmi e struct di dati magari puo confermare o correggere
    Live fast. Troll hard.
    Pythonist | Djangonaut | Puppeteer | DevOps | OpenStacker | Lost in malloc
    Team Lead @Gameloft Barcelona

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2000
    Messaggi
    1,175
    io con la complessità di spazio mi trovo 7 interi e un array float. sbaglio?

  4. #4
    Utente di HTML.it L'avatar di infinitejustice
    Registrato dal
    Nov 2001
    residenza
    Barcelona
    Messaggi
    772
    se stai facendo Algoritmi e quindi studi la complessità asintotica le singole variabili e le costanti (nel tempo) nn si calcolano
    Live fast. Troll hard.
    Pythonist | Djangonaut | Puppeteer | DevOps | OpenStacker | Lost in malloc
    Team Lead @Gameloft Barcelona

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2000
    Messaggi
    1,175
    Originariamente inviato da infinitejustice
    se stai facendo Algoritmi e quindi studi la complessità asintotica le singole variabili e le costanti (nel tempo) nn si calcolano
    sto facendo programmazione A....

  6. #6
    Utente di HTML.it L'avatar di infinitejustice
    Registrato dal
    Nov 2001
    residenza
    Barcelona
    Messaggi
    772
    A... che ?

    Io di analisi spazio/tempo di un algoritmo ho sempre solo sentito quella asintotica, anche perchè se no dovresti calcolare tutta una serie di costanti temporali che dipendono direttamente dalla macchina (tempo necessario ad eseguire una singola istruzione)

    Generalmente si fa invece in funzione di n, per n suff. grande e si guarda come cresce la funzione temporale/spaziale al crescere di n.
    Live fast. Troll hard.
    Pythonist | Djangonaut | Puppeteer | DevOps | OpenStacker | Lost in malloc
    Team Lead @Gameloft Barcelona

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.