C#에서 LinkedList의 시작 부분에 있는 노드를 제거하려면 RemoveFirst() 메서드를 사용하면 됩니다. 이 메서드는 연결 목록의 첫 번째 요소를 삭제하며, 목록이 비어 있을 경우 예외를 발생시키므로 호출 전에 목록에 요소가 있는지 확인하는 것이 좋습니다.
LinkedList 생성하기
먼저 문자열 배열을 기반으로 LinkedList를 생성해 보겠습니다.
string[] employees = {"Peter", "Robert", "John", "Jacob"};
LinkedList<string> list = new LinkedList<string>(employees);RemoveFirst() 메서드로 첫 번째 노드 제거하기
첫 번째 요소를 제거하려면 다음과 같이 RemoveFirst() 메서드를 호출합니다.
list.RemoveFirst();
메서드가 실행되면 목록의 맨 앞에 있던 "Peter"가 삭제되고, 두 번째 요소였던 "Robert"가 새로운 첫 번째 노드가 됩니다.
전체 예제 코드
아래는 전체 과정을 보여주는 완전한 C# 프로그램입니다.
using System;
using System.Collections.Generic;
class Demo {
static void Main() {
string[] employees = {"Peter", "Robert", "John", "Jacob"};
LinkedList<string> list = new LinkedList<string>(employees);
// 제거 전 목록 출력
foreach (var emp in list) {
Console.WriteLine(emp);
}
// 첫 번째 노드 제거
list.RemoveFirst();
Console.WriteLine("첫 번째 노드 제거 후 LinkedList...");
foreach (var emp in list) {
Console.WriteLine(emp);
}
}
}실행 결과
Peter Robert John Jacob 첫 번째 노드 제거 후 LinkedList... Robert John Jacob
참고 사항
RemoveFirst()는 시간 복잡도 O(1)로 동작하므로 매우 효율적입니다.- 마지막 노드를 제거하려면
RemoveLast()메서드를 사용할 수 있습니다. - 특정 값을 가진 노드를 제거하려면
Remove(T)메서드를 활용하세요.