포시코딩

[프로그래머스][Lv.0] 배열의 유사도 본문

자료구조알고리즘/문제풀이

[프로그래머스][Lv.0] 배열의 유사도

포시 2022. 12. 27. 19:59
728x90

문제

https://school.programmers.co.kr/learn/courses/30/lessons/120903

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

내 풀이

def solution(s1, s2):
    answer = 0
    if len(s1) > len(s2):
        s1, s2 = s2, s1
    for e in s1:
        try:
            if s2.index(e) >= 0:
                answer += 1
        except:
            continue
    return answer

 

다른 풀이

def solution(s1, s2):
    return len( set(s1) & set(s2) );

set을 통해 간단히 교집합을 구하는 방법을 사용했는데 

Python의 set 사용법은 잘 몰랐기에 따로 정리했다.

https://4sii.tistory.com/274

 

집합 자료형 set

set 특징 중복을 허용하지 않는다. 중복을 허용하지 않기 때문에 중복을 제거하기 위한 필터로 종종 사용된다. 순서가 없다. 순서가 없기 때문에 저장된 값에 접근하려면 튜플 또는 리스트로 변

4sii.tistory.com

728x90