Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [C++]Implementazione ordinamenti

    SALVE FORUM

    Come implemento questi pseudocidici degli algoritmi di selectionSort, insetionSort e bubbleSort sul programma che ho postato? mettiamo che io voglia ordinare la lista. Mi serve vedere proprio l'implementazione dell'ordinamento aggiunta a questo programma.

    pseudocodici:

    SELECTION SORT(array A):
    for k=0 to n-2 do
    m <- k+1
    for j=k+2 to n do
    if(A[j]<A[m]) then m <- j
    scambia A[m] con A[K+1]

    INSERTION SORT(array A):
    for k=1 to n-1 do
    x<-A[k+1]
    for j=1 to k+1 do
    if(A[j]>x)then break
    if(j<K+1)then
    for t=k downto j do A[t+1] <- A[t]
    A[j] <- x

    BUBBLE SORT(array A):
    for i=1 to (n-1)
    for j=2 to (n-i+1)
    if(A[j-1]>A[j])then scambia A[j-1] e A[j]
    if(non ci sono stati scambi)then break

    -----------------------------------------------------

    PROGRAMMA LISTA LINKATA

    #include <iostream>
    using namespace std;

    class lista
    {
    private:
    int numero;
    lista *successivo;
    public:
    lista();
    void set(int num) {numero = num;};
    int get() {return numero;};
    void pointTo(lista *point) {successivo = point;};
    lista *getnext(){return successivo;};

    };

    void inserisci(int num);
    void visualizza();

    lista *start;
    lista *nuovo;
    lista *ultimo;



    lista::lista()
    {
    numero = 0;
    successivo = NULL;
    }



    int main()
    {
    int scelta, num;
    do
    {
    cout << "################## LISTA LINKATA ####################\n\n\n";
    cout << "Inserisci il numero che corrisponde all'operazione che vuoi compiere: \n\n\n";
    cout << "Se vuoi inserire un elemento premi 1\n\n";
    cout << "Se vuoi visualizzare gli elementi inseriti premi 2\n\n";
    cout << "Se vuoi uscire premi 3\n\n\n";
    cout << "Digita la tua scelta-> ";
    cin >> scelta;

    switch(scelta)
    {
    case 1:
    nuovo = new lista;
    cout << "\n\nInserisci il numero-> ";
    cin >> num;
    inserisci(num);
    system ("pause");
    system ("cls");
    break;

    case 2:

    visualizza();
    system ("pause");
    system ("cls");
    break;


    default:
    cout << "\nINSERISCI UN VALORE CORRETTO\n\n";
    break;
    }
    }while(scelta != 3);
    return 0;
    }


    void inserisci (int num)
    {
    nuovo = new lista;
    nuovo->set(num);
    if (start == NULL)
    start = nuovo;
    else
    ultimo->pointTo(nuovo);
    ultimo = nuovo;
    }

    void visualizza ()
    {
    if (start== NULL)
    cout << "\n\n\nNon ci sono elementi da visualizzare\n\n\n";
    else
    {
    nuovo = start;
    cout << "\n\nElementi inseriti:\n\n";
    do
    {
    cout << "\n\n "<< nuovo->get( )<<"\n\n";
    nuovo= nuovo->getnext( );
    }while ( nuovo!= NULL);
    };
    }

    grazieeeee

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Prova a proporre le tue soluzioni ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Originariamente inviato da oregon
    Prova a proporre le tue soluzioni ...
    Se ho chiesto aiuto qui sul forum significa che serve che voi mi proponiate le vostre...
    perciò, proponete pleaseee

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Originariamente inviato da il Principino
    Se ho chiesto aiuto qui sul forum significa che serve che voi mi proponiate le vostre...
    perciò, proponete pleaseee
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,296
    Originariamente inviato da il Principino
    Se ho chiesto aiuto qui sul forum significa che serve che voi mi proponiate le vostre...
    perciò, proponete pleaseee
    Nessuno propone nulla.

    Qui si aiuta chi è in difficoltà nel programmare, non si fa il lavoro al posto altrui.

    Leggi il Regolamento.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

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 © 2024 vBulletin Solutions, Inc. All rights reserved.