Salve a tutti,
sono nuovo del forum, quindi vi chiedo preventivamente di ignorare e aiutarmi nel caso in cui io commetta qualche errore all'interno del forum.
ho urgente bisogno di aiuto, questa è la traccia:
In questo esercizio ti viene chiesto di implementare l'algoritmo di Selection Sort visto in classe.
Una volta implementato l'algoritmo, risolvi i seguenti esercizi:
1Calcola la complessita computazionale dell'algoritmo implementato. Puoi assumere che il numero di
elementi dell'array sia n.
2 Dato un vettore di interi v e un intero x scrivi una funzione in C che stabilisce se esistono in v due elementi
v
e v tali che v + v = x. Calcola la complessita computazionale dell'algoritmo
proposto. Esiste un'algoritmo che funziona in tempo
O(n^2)? E possibile fare meglio?
Questo è quello che ho provato a fare:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int v[100], n, i, j, position;
printf("Inserisci il numero degli elementi\n");
scanf("%d", &n);
printf("Inserisci %d elementi\n", n);
for ( i = 0 ; i < n ; i++ )
scanf("%d", &v[i]);
int x;
printf("inserisci un intero x \n");
scanf("%d", &x);
for ( i = 0 ; i < ( n - 1 ) ; i++ )
{
position = i;
int somma = v[position] + v[j];
for ( j = i + 1 ; j < n ; j++ )
{
if ( somma = x )
somma = x;
}
if ( somma != x )
i++;
}
system("pause");
return 0;
}
P.S. Ho gia creato il codice di un algoritmo che ordina un array con il selection sort, quindi la prima parte non contatela, bensi le altre 2