[Unity]/[C#]

[C#] .NET의 연결 리스트 : LinkedList<T>

극꼼 2022. 1. 25. 14:48
반응형


LinkedList<T>

: 이중 연결 리스트로 되어 있으며, 리스트 노드는 LinkedListNode<T> 클래스를 사용.

노드를 추가하기 위한 AddFirst(처음), AddLast(끝), AddBefore(특정 노드 앞), AddAfter(특정 노드 뒤) 등 다양한 메서드가 있음.

 

* 연결리스트가 어떤 구조로 되어 있는지에 대한 자세한 내용은 아래 링크에 있습니다.

https://geukggom.tistory.com/160

 


LinkedList의 메서드 종류

Count LinkedList에 포함된 노드의 수를 가져옴
First LinkedList의 첫번째 노드를 가져옴
Last LinkedList의 마지막 노드를 가져옴
AddFirst()(처음), AddLast()(끝), AddBefore()(특정 노드 앞), AddAfter()(특정 노드 뒤) 새 노드 추가
Clear() 노드를 모두 제거
Contains(T) 값이 LinkedList에 있는지 확인
Find(T), FindLast(T) 지정된 값이 포함된 노드(첫번째 또는 마지막) 검색
Remove(T)(특정 값), RemoveFirst()(시작 위치의 노드), RemoveLast()(마지막 위치의 노드) 특정 노드 제거

 

 

코드 예시)

LinkedList<int> list = new LinkedList<int>();
list.AddLast(1);
list.AddLast(2);
list.AddLast(3);
list.AddLast(4);

var node = list.Find(2);
var newNode = new LinkedListNode<int>(3);
list.AddAfter(node, newNode); //2가 들어있는 노드 다음에 3을 집어넣음

foreach (var val in list) Debug.Log(val); //출력

 

반응형