![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
A tarefa principal é limpar o conjunto de valores definidos.
Esta não pode ser a tarefa principal. O que é coletado nesta matriz e como é então utilizado?
Bem, isso não é sério. Se puxando elefantes para resolver este pequeno problema particular, eu mencionaria STL::remove(array, valor).
Isso é apenas muito sério e fundamental. MQL é apenas verboso. Terrivelmente.
Operadores fundamentais como filtro (que em TC é ele, filtragem), mapa (mapeamento), dobra (colapso, sumarização)
deve ser implementado de imediato, sem perguntas. E ser otimizado.
Isto é apenas muito sério e fundamental. MQL é apenas verboso. É horrível.
Operadores fundamentais como filtro (que no TC é filtragem), mapa (mapeamento), dobra (soma)
devem ser implementados imediatamente, sem nenhuma dúvida. E ser otimizado.
A questão é que puxar uma dependência tão gorda ("fundamental") para uma pequena tarefa é um disparate. Se escrever tudo sabiamente e refatorar todo o projeto - então, claro, mas não é a essência da pergunta original.
Fórum sobre comércio, sistemas automatizados de comércio e testes de estratégia comercial
Limpeza de uma matriz a partir de Elementos Especificados
Dmitry Fedoseev, 2018.11.12 23:05
Isto é algum tipo de vergonha...©
1. A comparação das variáveis do tipo duplo via ==, para dizer de forma branda, não é cômica;
2. A complexidade do código é O(n^2), e a pior complexidade para este problema com uma seqüência de entrada não classificada deve ser O(n);
3. O código não funciona, porque quando a função é realmente utilizada, é impossível determinar quantos valores válidos a matriz retornada contém:
Resultado da execução:
Os valores inválidos são destacados em vermelho, eles nunca foram removidos da matriz.
Isto é algum tipo de vergonha...©
1. Não é agradável comparar variáveis do tipo duplo via ==, para dizer de forma branda;
2. A complexidade do código é O(n^2), e o pior caso de complexidade para este problema com uma seqüência de entrada não classificada deve ser O(n);
3. O código não funciona, porque quando a função é realmente utilizada, é impossível determinar quantos valores válidos a matriz retornada contém:
Resultado da execução:
Os valores inválidos que nunca foram removidos da matriz são destacados em vermelho.
Jublik? Que assim seja. A comparação de variáveis do tipo duplo é bastante cômica se elas não forem calculadas antes da comparação.
Aprenda a matemática. E a vergonha?
Isto é algum tipo de vergonha...©
1. A comparação das variáveis do tipo duplo com == é, para dizer de forma suave, não cômica;
2. A complexidade do código é O(n^2), e a pior complexidade para este problema com seqüência de entrada não classificada deve ser O(n);
3. O código não funciona, porque quando a função é realmente utilizada, é impossível determinar quantos valores válidos a matriz retornada contém:
Resultado da execução:
Os valores inválidos que nunca foram removidos da matriz são destacados em vermelho.
Não seja absurdo. Devo explicar-lhe seu erro, ou você mesmo pode adivinhá-lo? Não é nada difícil...
Três pontos, três currais. Na verdade, não, apenas dois paddocks.
ps, mas eu tenho fé em você.
ps2 aqui está o resultado, se você usar a função corretamente:
Assim é melhor:
Assim é melhor:
Dimitri, deixe-me aborrecê-lo - v também é uma matriz.
E de qualquer forma, tudo isso é um monte de bobagens.
Dimitri, deixe-me aborrecê-lo - v também é uma matriz.
E em geral, tudo isso é um total absurdo.
Se v é uma matriz, não é um problema. Mas o fato de que é um disparate é mais provável. Eu nunca senti a necessidade de resolver esta tarefa.
Se for um concurso de velocidade, oferecerei também minha própria variante:
Eu escrevi um roteiro de teste para todas as variantes.
Quem é o próximo? :))Aqui está o resultado para um conjunto de 1 000 000 de elementos (cerca de 1000 valores extras):
Peter, Awwww....