성능이 중요한 시나리오에 대한 목록 하위 집합 구성원 확인
두 개의 목록이 주어지면 하나가 다른 하나의 하위 집합인지 확인하는 것은 일반적인 작업입니다. . 최적의 성능을 얻으려면 가장 효율적인 접근 방식을 선택하는 것이 필수적입니다.
한 가지 방법은 목록에서 파생된 집합을 교차하고 결과가 하나의 집합과 같은지 확인하는 것입니다. 그러나 관련된 데이터 세트의 수를 고려할 때 더 성능이 좋은 솔루션이 필요합니다.
한 목록이 정적이고 다른 목록이 키가 추출되는 동적 사전인 경우 대체 접근 방식이 권장됩니다. 다음 해결 방법을 고려해 보세요.
<code class="python">def is_subset(lookup_table, dynamic_list): # Convert lookup table to a set for efficient lookups lookup_set = set(lookup_table) # Convert dynamic list to a set for faster comparisons dynamic_set = set(dynamic_list.keys()) # Check if the dynamic list's set is a subset of the lookup table's set return dynamic_set <= lookup_set
정적 조회 테이블과 동적 목록을 집합으로 변환하면 조회 작업이 훨씬 더 빨라집니다. 또한 <= 연산자를 사용하여 집합을 비교하는 것이 매우 효율적입니다.
예:
<code class="python">>>> lookup_table = [1, 3, 5] >>> dynamic_list = [1, 3, 5, 8] >>> is_subset(lookup_table, dynamic_list) True >>> lookup_table = ['yes', 'no', 'hmm'] >>> dynamic_list = ['sorry', 'no', 'hmm'] >>> is_subset(lookup_table, dynamic_list) False</code>
위 내용은 성능이 중요한 시나리오에서 목록 하위 집합 구성원을 효율적으로 확인하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!