Análisis comparativo de arrays y listas enlazadas en Python y C#: impacto en la eficiencia de memoria
DOI:
https://doi.org/10.55873/rad.v4i2.422Palabras clave:
arrays, C#, eficiencia de memoria, estructuras de datos, listas enlazadas, programación, PythonResumen
Este artículo analiza el impacto en la eficiencia de memoria de arrays y listas enlazadas en Python y C#. Implementaron ambas estructuras y se evaluaron tres operaciones sobre colecciones de 10,000 elementos: acceso al centro, inserción y eliminación. Los tiempos de ejecución se midieron con timeit en Python y Stopwatch en C# complementadas con la estimación del consumo de memoria. El análisis estadístico mediante ANOVA de dos factores permitió contrastar el efecto del lenguaje y de la estructura de datos. Los resultados muestran que los arrays son sistemáticamente más eficientes que las listas enlazadas en ambas plataformas. En el acceso al centro, los arrays registraron tiempos casi constantes (0.0010 ms en Python y 0.0012 ms en C#), superando ampliamente a las listas enlazadas gracias a su organización contigua en memoria. También presentaron mejor desempeño en inserciones y eliminaciones intermedias. El ANOVA evidenció que el lenguaje de programación no influye significativamente en los tiempos de ejecución (p > 0.05), siendo la estructura de datos el principal factor del rendimiento; por ello, los arrays constituyen la opción más eficiente en escenarios con accesos aleatorios y operaciones intermedias, independientemente del lenguaje.
Descargas
Citas
Aoe, J., Morimoto, K., & Sato, T. (1992). An efficient implementation of trie structures. Software: Practice and Experience, 22(9), 695–721. https://doi.org/10.1002/spe.4380220902
Bae, S. (2019). Linked Lists. In JavaScript Data Structures and Algorithms (pp. 179–192). Apress. https://doi.org/10.1007/978-1-4842-3988-9_13
Banerjee, A., & Kumar, P. K. (2022). A New Vista of Performing Insertion and Deletion in Linked Lists. International Journal of Computer Science and Mobile Computing, 11(7), 83–97. https://doi.org/10.47760/ijcsmc.2022.v11i07.008
Chen, Z., Chen, L., Yang, Y., Feng, Q., Li, X., & Song, W. (2024). Risky Dynamic Typing-related Practices in Python: An Empirical Study. ACM Transactions on Software Engineering and Methodology, 33(6), 1–35. https://doi.org/10.1145/3649593
Extending Python Using NumPy. (2019). In Python® Machine Learning (pp. 19–38). Wiley. https://doi.org/10.1002/9781119557500.ch2
Fetaji, M., Ebibi, M., & Fetaji, B. (2012). Measuring Algorithms Performance in Dynamic Linked List and Arrays. TEM Journal, 98–103. https://doi.org/10.18421/TEM12-06
Gonzalez, A. J. (2020). Dynamically-Allocated Memory and Linked Lists. In Computer Programming in C for Beginners (pp. 157–173). Springer International Publishing. https://doi.org/10.1007/978-3-030-50750-3_11
Lokeshwar, B., Zaid, M. M., Naveen, S., Venkatesh, J., & Sravya, L. (2022). Analysis of Time and Space Complexity of Array, Linked List and Linked Array(hybrid) in Linear Search Operation. 2022 International Conference on Data Science, Agents & Artificial Intelligence (ICDSAAI), 1–6. https://doi.org/10.1109/ICDSAAI55433.2022.10028872
Morita, K. (2004). Fast and compact updating algorithms of a double-array structure. Information Sciences, 159(1–2), 53–67. https://doi.org/10.1016/S0020-0255(03)00189-0
Mrena, M., Varga, M., & Kvassay, M. (2022). Experimental Comparison of Array-based and Linked-based List Implementations. 2022 IEEE 16th International Scientific Conference on Informatics (Informatics), 231–238. https://doi.org/10.1109/Informatics57926.2022.10083495
SYEROV, Y., & TERLETSKA, K. (2025). ANALYZING THE INNOVATIVE ENGINEERING TECHNOLOGY STACK. Herald of Khmelnytskyi National University. Technical Sciences, 349(2), 89–93. https://doi.org/10.31891/2307-5732-2025-349-12
Descargas
Publicado
Cómo citar
Número
Sección
Licencia
Derechos de autor 2025 Aldo Alarcón-Sucasaca , Nestor Antonio Gallegos-Ramos

Esta obra está bajo una licencia internacional Creative Commons Atribución 4.0.



