Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Artículo publicado Del básico al intermedio: Colas, listas y árboles (III):
Cuando usas la función de biblioteca de MQL5 llamada ArrayInsert, su objetivo es insertar nuevos datos dentro de un array ya existente. Hasta ahí, todo correcto. Sin embargo, esta función tiene un pequeño detalle: cuando insertamos nuevos datos al final del array ya existente, los datos simplemente se copian dentro del array. Es básicamente equivalente a usar la función ArrayCopy.
Sin embargo, cuando queremos añadir elementos en medio de un array ya existente, o al inicio de ese mismo array, ocurre algo diferente. En este caso, la función ArrayInsert asignará un nuevo bloque de memoria; luego copiará parte de los elementos en este nuevo bloque. Añadirá los nuevos elementos que insertamos en el bloque recién asignado. Solo después copiará el resto del array original dentro del bloque asignado. Con esto, si usamos un array muy grande, podemos tener un tiempo de ejecución un tanto elevado. Aunque, con el bus de datos actual de las placas base modernas, estos bloques que deben desplazarse tienen que ser realmente muy grandes para que puedas notar la diferencia. O, como mínimo, necesitamos efectuar varias inserciones para que el tiempo de procesamiento pueda percibirse.
No obstante, al comienzo de la era de las computadoras, el procesamiento no era tan ágil. El bus de datos era lento, y estos movimientos, incluso con pocos elementos, requerían mucho tiempo. Así, ingenieros y académicos crearon una solución para el problema. Y esta solución son precisamente las listas. Ahora, volvamos a la cuestión del código 01. Cuando la lista está totalmente creada, lo que tendremos en la memoria es algo parecido a lo que se ve a continuación.
Autor: CODE X