Система автоматизації робочого місця адміністратора готелю
9

 

1.5  List<T>

Являє строго типізований список об'єктів, доступних за індексом. Підтримує методи для пошуку за списком, виконання сортування і інших операцій зі списками.

Серед його методів можна виділити наступні:

  • void Add (T item): додавання нового елемента в список
  • int IndexOf (T item): повертає індекс першого входження елемента в списку
  • void Insert (int index, T item): вставляє елемент item в списку на позицію index
  • bool Remove (T item): видаляє елемент item зі списку, і якщо видалення пройшло успішно, то повертає true
  • void Sort (): сортування списку

 

Перевага зв'язного списку проявляється в тому, що операція вставки елемента в середину виконується дуже швидко. При цьому тільки посилання Next (наступний) попереднього елемента і Previous (попередній) наступного елементу повинні бути змінені так, щоб вказувати де вставляється елемент. У класі List <T> при вставці нового елементу всі наступні повинні бути зрушені.

Природно, у зв'язкових списків є і свої недоліки. Так, наприклад, всі елементи зв'язкових списків доступні лише один за одним. Тому для знаходження елемента, що знаходиться в середині або кінці списку, потрібно досить багато часу. Зв'язний список не може просто зберігати елементи всередині себе. Разом з кожним з них йому необхідно мати інформацію про наступне і попередньому елементах. Ось чому LinkedList <T> містить елементи типу LinkedListNode <T>. За допомогою класу LinkedListNode <T> з'являється можливість звернутися до попереднього і подальшого елементам списку.