Borrar una matriz de elementos definidos - página 23

 
Maxim Kuznetsov:
Creo que Nicholas se limitará a completarlo, no hay nada con lo que compararlo :-) El tiempo de Pedro es infinito.

Bueno, sí. No tiene sentido compararlo con el infinito: habrá infinito en cualquier caso. Pero me refería al tiempo de vuelo actual de Peter para comparar.

 
Artyom Trishkin:

Sí, no tiene sentido compararlo con el infinito, ya que en cualquier caso habrá infinito. Pero me refería al tiempo de vuelo actual de Peter para comparar.

Código incorrecto y, en consecuencia, resultados incorrectos. Puedo luchar un poco.

 
Vale, chicos, ya hemos tenido suficiente con el jardín de infancia. )) Nikolai, ¡te deseo victorias creativas!
 
Реter Konow:

Inicie el mismo proyecto. Ya lo descubrirás).

mis proyectos están en un campo completamente diferente. Ya he dicho que su proyecto fue relevante a finales de los años 80.
Anatoly hizo algo muy sensato. No sólo ganó puntos en esta comunidad, sino que también pudo monetizar su trabajo publicando 70 artículos.

Pero tu proyecto, Pyotr, es una tarea de Sísifo. Te lo dije hace un año y medio.

 

¿Qué algoritmo se adapta mejor a los pequeños cambios en los requisitos?

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:

¿Qué algoritmo se adapta mejor a los pequeños cambios en los requisitos?

Y cuál es la pregunta. ¿En una simple comparación de matrices? ¿Qué cambios, qué requisitos?

La pregunta correcta. La mitad de la respuesta.

 
Konstantin Nikitin:

Y cuál es la pregunta. ¿En una simple comparación de matrices? ¿Qué cambios, qué requisitos?


La matriz original de origen se filtra ahora por una lista de valores en lugar de un único valor.

 
nicholi shen:

¿Qué algoritmo se adapta mejor a los pequeños cambios en los requisitos?


si muliple_filters no es demasiado grande, entonces cualquiera... si es grande, entonces puede haber algoritmos especiales para la comparación de conjuntos (en esencia: toda la tarea es restar de un conjunto otro)

En general, el filtro puede ser de la forma

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

y permitir que src, dst se refieran al mismo array.

Así que puede, por ejemplo, descartar todos los números que caen (o no caen) en el rango.

---

Cualquiera de los algoritmos presentados puede revestirse de una forma similar. (en lugar de comparar con la constante X, será una llamada a una función, (o como en tu caso encontrar un elemento en un array) )

 
nicholi shen:


La matriz original de origen se filtra ahora por una lista de valores en lugar de un único valor.

Lamento escuchar eso.

 
Maxim Kuznetsov:

si muliple_filters no es demasiado grande, entonces cualquiera... si es grande, entonces puede haber algoritmos especiales para comparar conjuntos (básicamente: todo el problema es restar de un conjunto otro)

En general, el filtro puede ser de la forma

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

y permitir que src, dst se refieran al mismo array.

Para poder, por ejemplo, descartar todos los números que entren (o no) en el rango.

---

Cualquiera de los algoritmos presentados puede revestirse de una forma similar. (en lugar de comparar con la constante X, será una llamada a una función, (o como en tu caso encontrar un elemento en un array) )

No es ruso, así que es difícil de entender. El habla español.