Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C# LinkedList Contains() 메서드로 특정 요소 포함 여부 확인하기

C#에서 LinkedList에 특정 요소가 존재하는지 확인하려면 Contains() 메서드를 사용합니다. 이 메서드는 해당 요소가 리스트에 있으면 True를, 없으면 False를 반환합니다.

LinkedList 생성하기

먼저 정수 배열을 기반으로 LinkedList를 생성해 보겠습니다.

int[] num = {1, 3, 7, 15};
LinkedList<int> list = new LinkedList<int>(num);

Contains() 메서드 사용법

리스트에 특정 노드가 포함되어 있는지 확인하려면 다음과 같이 Contains() 메서드를 호출합니다. 아래 예제는 값 3이 리스트에 있는지 검사합니다.

list.Contains(3)

리스트에 3이라는 요소가 존재하므로 위 코드는 True를 반환합니다.

전체 예제 코드

다음은 LinkedList에 새 노드를 추가한 후, Contains() 메서드로 특정 요소의 존재 여부를 확인하는 완전한 예제입니다.

using System;
using System.Collections.Generic;

class Demo {
    static void Main() {
        int[] num = {1, 3, 7, 15};
        LinkedList<int> list = new LinkedList<int>(num);

        // 초기 리스트 출력
        foreach (var n in list) {
            Console.WriteLine(n);
        }

        // 리스트 끝에 노드 추가
        var newNode = list.AddLast(20);

        // 위에서 추가한 노드 뒤에 새 노드 삽입
        list.AddAfter(newNode, 30);

        Console.WriteLine("새 노드 추가 후 LinkedList...");
        foreach (var n in list) {
            Console.WriteLine(n);
        }

        // 값 3이 리스트에 있는지 확인
        Console.WriteLine("리스트에 숫자 3이 포함되어 있는가?: " + list.Contains(3));
    }
}

실행 결과

1
3
7
15
새 노드 추가 후 LinkedList...
1
3
7
15
20
30
리스트에 숫자 3이 포함되어 있는가?: True

정리

Contains() 메서드는 LinkedList 내부를 처음부터 끝까지 순회하며 지정한 값과 일치하는 요소를 찾습니다. 따라서 시간 복잡도는 O(n)이며, 요소 개수가 많은 경우 성능에 영향을 줄 수 있다는 점을 참고하시기 바랍니다.