Al usar el método de extensión .ToList()
en un Stack<T>
, ¿el resultado es lo mismo que mostrar cada elemento y agregarlo a una nueva lista (al revés de lo que se presionó)?stack.ToList() en .NET - orden de los elementos?
Si es así, ¿esto se debe a que realmente se está iterando sobre cada elemento, o almacena los elementos en reversa internamente y desliza la matriz en un nuevo List<T>
?
¿Por qué es seguro suponer eso? No he podido encontrar nada en la documentación que indique en qué orden se repite el enumerador de 'Stack', pero tal vez no me veo lo suficientemente bien ... –
No lo dice rotundamente (al menos no por el momento), pero el ejemplo con [la documentación de 'Stack.GetEnumerator'] (https://msdn.microsoft.com/en-us/library/yfw8w9at%28v=vs.100%29.aspx?f= 255 & MSPPError = -2147217396) muestra un orden de último a primer, y las operaciones de inversión de pila en el ejemplo no funcionarían si no se usara este orden (oops, como dijo Jon Skeet en su respuesta). – dlf