Visualizzazione dei risultati da 1 a 4 su 4

Visualizzazione discussione

  1. #2
    È inutilmente inefficiente e complicato riordinare l'array (specie con il bubble sort), puoi fare tutto in una sola passata sull'array. Ragiona un po' su questo codice:
    codice:
    void fun(int a[], int n) {
        if (n==0) {
            cout<<"array vuoto!\n";
            return;
        }
        int f=a[0], s=a[0];
        for(int i=0; i<n; ++i) {
            if(a[i]<f) {
                s=f; f=a[i]
            } else if(a[i]<s && a[i]!=f) {
                s=a[i];
            }
        }
        if(f==s) {
            cout<<"non ci sono due elementi distinti";
        } else {
            cout<<s;
        }
    }
    Ultima modifica di MItaly; 10-06-2015 a 13:24 Motivo: Corretta condizione
    Amaro C++, il gusto pieno dell'undefined behavior.

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.