Angella Andrea - Italian Blog

Infinita passione per lo sviluppo software !
posts - 133, comments - 216, trackbacks - 9

My Links

News

MIT OpenCourseWare: I'm invested Wikipedia Affiliate Button


Sto leggendo:

Archives

Post Categories

Siti web realizzati

Siti web tecnici

[70-536] - Queue and Stack classes


Area di riferimento

- Developing applications that use system types and collections
    - Manage a group of associated data in a .NET Framework application by using collections. (Refer System.Collections namespace)
        - Stack class
        - Queue class


Stack e Queue

La classe Stack e la classe Queue sono l'implementazione di due note strutture dati nel mondo informatico.
La prima utilizza la tecnica LIFO (Last In First Out) per inserire ed estrarre gli elementi. La seconda invece utilizza la tecnica FIFO (First In First Out).

Semplice utilizzo della classe Stack:

Stack stack = new Stack();  

stack.Push("Andrea");             // Inserimento in testa alla pila
stack.Push("Franco");
stack.Push("Annamaria");

Console.WriteLine(stack.Peek());  // Legge la testa della pila senza estrarre l'elemento
Console.WriteLine(stack.Pop());   // Estrazione di un elemento dalla testa della pila
Console.WriteLine(stack.Pop());
Console.WriteLine(stack.Pop());


Semplice utilizzo della classe Queue:

Queue queue = new Queue();

queue.Enqueue("Andrea");              // Inserimento in coda
queue.Enqueue("Franco");
queue.Enqueue("Annamaria");

Console.WriteLine(queue.Peek());      // Legge il primo elemento della coda senza estrarlo
Console.WriteLine(queue.Dequeue());   // Estrae il primo elemento inserito nella coda
Console.WriteLine(queue.Dequeue());
Console.WriteLine(queue.Dequeue());


Entrambe le classi implementano le interfaccie ICollection, IEnumerable e ICloneable.
E' possibile quindi utilizzare il costrutto foreach per scorrere gli elementi di entrambe le strutture dati anche se questo generalmente non si usa.

foreach (string s in stack)
{
    Console.WriteLine(s);
}

foreach (string s in queue)
{
    Console.WriteLine(s);
}

Print | posted on domenica 28 ottobre 2007 14:39 | Filed Under [ Exam 70-536 Application Development Foundation ]

Comments have been closed on this topic.

Powered by:
Powered By Subtext Powered By ASP.NET