알고리즘
[프로그래머스] 배열의 원소 삭제하기
🐶 Hong
2023. 10. 12. 00:19
https://school.programmers.co.kr/learn/courses/30/lessons/181844?language=swift
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제
두 개의 배열에서 하나의 배열을 빼는 기초 문제입니다. 😋
arr 배열에 delete_list 요소들을 모두 제거해 주면 answer~!
풀이
import Foundation
func solution(_ arr:[Int], _ delete_list:[Int]) -> [Int] {
return arr.filter { !delete_list.contains($0) }
}
참고로 contains는 O(n)이다.
+ Set을 이용하여 O(n^2) -> O(n)으로 만들기
func solution(_ arr:[Int], delete_list:[Int]) -> [Int] {
let deleteSet = Set( delete list)
return arr.filter { !deleteSet.contains($0) }
}
10배 차이나는 케이스도 있었다. wow
반응형