Pregunta

Soy un estudiante de Ingeniería de Software de nivel superior actualmente en una clase de Estructuras de Datos y Algoritmos. Nuestro profesor quiere que escribamos un programa utilizando la estructura de Lista que se encuentra en C ++ STL. He estado tratando de usar C # más y más, y me preguntaba si la estructura ArrayList en .NET es un buen sustituto para la implementación de la lista STL.

¿Fue útil?

Solución

A menos que esté atascado con .NET 1.1, use List<T> en lugar de ArrayList. ¿Pero de qué estás fundamentalmente preocupado? Suponga que no tiene una lista a la que hacer referencia: ¿para qué necesita la estructura de datos adecuada?

Otros consejos

Debería poder responder esta pregunta usted mismo. ¿Cuál es la estrategia de implementación utilizada en las listas STL? ¿Cuál es el de ArrayList? Del mismo modo, ¿cuál es la API abstracta presentada por la lista STL (en términos de operaciones proporcionadas)? Compare esto con la lista STL: ¿qué proporciona el uno que el otro no?

si la Lista STL usa plantillas, es posible que desee ver la clase Lista genérica en System.Collections.Generic.

Um, C ++ STL no tiene una estructura llamada " List " ;. Creo que hay una & Quot; list & Quot ;, que es una lista vinculada. La lista de C #, en contraste, es análoga al vector de C ++.

La clase ArrayList está algo obsoleta. Es de .NET 1.0 veces cuando los genéricos aún no existían.

Deberías usar System.Collections.Generic.List en su lugar. Así:

List<int> myList = new List<int>();
myList.Add(1);
myList.Add(2);
System.Console.WriteLine(myList[0]);

Y sí, ambos son buenos sustitutos. Sin embargo, debe usar la Lista genérica, ya que es segura y potencialmente más rápida.

Gracias a todos

quertie, escribí mal y quise decir list en lugar de List ...

la asignación es usar std :: list para agregar polinomios usando una lista de estructuras simples, una estructura que contenga el coeficiente y la potencia de x ... lo suficientemente fácil, lo sé, pero dado que la clase es supuestamente lenguaje independiente, quería intentar usar c #

El análogo de C # más cercano de la lista std :: es System.Collections.List. Ambas son colecciones genéricas e implementan las acciones estándar de tipo lista.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top