본문 바로가기
개발/C#

[C#] 해시셋(HashSet) 활용하기

by MNMNMNMN 2023. 12. 16.
728x90

해시셋(HashSet) 활용하기

해시셋(HashSet)은 중복을 허용하지 않고 빠른 검색을 제공하는 자료구조중 하나입니다. c#에서 사용하는 해시셋(HashSet)에 대해서 알아봅니다.


1. 해시셋(HashSet)의 특징

1. 중복 요소 제거 : 중복된 값을 허용하지 않습니다. 새로운 값을 추가할 때 이미 존재하는 값이라면 무시됩니다.

2. 빠른 검색 속도 : 해시 테이블을 사용하므로 데이터를 빠르게 검색할 수 있습니다. 많이 사용하는 리스트나 배열보다 훨씬 빠릅니다.

3. 순서가 없음 : 데이터를 순서대로 저장하지 않습니다. 데이터의 저장 순서가 중요하다면 리스트나 배열을 사용하는 것이 좋습니다.

 

반응형

 

2. 해시셋(HashSet) 사용 예시

using System.Collections.Generic

// HashSet 생성과 초기화
HashSet<string> uniqueNames = new HashSet<string> { "Alice", "Bob", "Charlie", "Alice" };

// 중복이 제거된 결과 출력
Console.WriteLine("Unique Names:");
foreach (var name in uniqueNames)
{
    Console.WriteLine(name);
}

// HashSet에 값 추가
uniqueNames.Add("David");

// HashSet에서 값 제거
uniqueNames.Remove("Bob");

// HashSet에서 값 검색
bool containsAlice = uniqueNames.Contains("Alice");
Console.WriteLine($"HashSet contains Alice: {containsAlice}");

결론

해시셋은 중복을 허용하지 않는 데이터를 처리할때 사용하면 좋을 것 같다.

728x90
반응형

댓글