Cancellare un array di elementi definiti - pagina 23

 
Maxim Kuznetsov:
Penso che Nicholas lo completerà semplicemente, non c'è niente con cui confrontarlo :-) Il tempismo di Pietro è infinito.

Beh, sì. Non ha senso confrontarlo con l'infinito - ci sarà l'infinito in ogni caso. Ma io mi riferivo all'attuale tempo di volo di Peter per fare un confronto.

 
Artyom Trishkin:

Sì, non ha senso paragonarlo all'infinito - ci sarà l'infinito in ogni caso. Ma io mi riferivo all'attuale tempo di volo di Peter per fare un confronto.

Codice errato e, di conseguenza, risultati errati. Posso combattere un po'.

 
Ok, ragazzi, ne abbiamo abbastanza dell'asilo. )) Nikolai, ti auguro vittorie creative!
 
Реter Konow:

Iniziare lo stesso progetto. Lo scoprirai).

i miei progetti sono in un campo completamente diverso. Ho già detto che il vostro progetto era rilevante alla fine degli anni '80.
Anatoly ha fatto una cosa molto sensata. Non solo ha guadagnato punti in questa comunità, ma ha anche potuto monetizzare il suo lavoro pubblicando 70 articoli.

Ma il tuo progetto, Pyotr, è un compito sisifeo. Ve l'ho detto un anno e mezzo fa.

 

Quale algoritmo è più adatto ai piccoli cambiamenti dei requisiti?

int array_filter(int &array[], const int &multiple_filters[]);


int array_filter(int &arr[], const int &filters[])
{
   int size_arr = ArraySize(arr);
   int size_filters = ArraySize(filters);
   int i=0, j=0, k=0;
   for(i=0; i<size_arr; i++){
      for(j=size_filters-1; j>=0; --j)
         if(arr[i] == filters[j])
            break;
      if(j < 0)
         arr[k++] = arr[i]; 
   }
   return ArrayResize(arr, k); 
}
 
nicholi shen:

Quale algoritmo è più adatto ai piccoli cambiamenti dei requisiti?

E qual è la domanda. In un semplice confronto di array? Quali cambiamenti, quali requisiti?

La domanda giusta. Metà della risposta.

 
Konstantin Nikitin:

E qual è la domanda. In un semplice confronto di array? Quali cambiamenti, quali requisiti?


L'array originale è ora filtrato da una lista di valori invece che da un singolo valore.

 
nicholi shen:

Quale algoritmo è più adatto ai piccoli cambiamenti dei requisiti?


se muliple_filters non è troppo grande, allora qualsiasi... se è grande, allora ci possono essere algoritmi speciali per il confronto degli insiemi (in sostanza: l'intero compito è quello di sottrarre da un insieme un altro)

In generale, il filtro può avere la forma:

int array_filter(const T &src[], T &dst, bool (*filter_condition)(const T));

e permettere che src, dst si riferiscano allo stesso array.

Così si possono ad esempio scartare tutti i numeri che cadono (o non cadono) nell'intervallo.

---

Qualsiasi algoritmo presentato può essere rivestito in una forma simile. (invece di confrontare con la costante X, sarà una chiamata di funzione, (o come nel tuo caso trovare un elemento in un array) )

 
nicholi shen:


L'array originale è ora filtrato da una lista di valori invece che da un singolo valore.

Mi dispiace sentire questo.

 
Maxim Kuznetsov:

se muliple_filters non è troppo grande, allora qualsiasi... se grande, allora ci possono essere algoritmi speciali per confrontare gli insiemi (fondamentalmente: l'intero problema è sottrarre da un insieme un altro)

In generale, il filtro può essere della forma:

int array_filter(const T &src[], T &dst, bool (*filter_condition)(const T));

e permettere che src, dst si riferiscano allo stesso array.

Per essere in grado, ad esempio, di scartare tutti i numeri che rientrano (o meno) nell'intervallo.

---

Qualsiasi algoritmo presentato può essere rivestito in una forma simile. (invece di confrontare con la costante X, sarà una chiamata di funzione, (o come nel tuo caso trovare un elemento in un array) )

Non è russo, quindi è difficile da capire. El habla espanol.