람다(lambda)는 코딩 테스트 및 프로그래밍에서 많이 사용되는 개념 중 하나입니다. 람다는 간단하면서도 강력한 함수를 생성할 수 있는 기능으로, 주로 함수형 프로그래밍 패러다임을 지원하는 언어에서 자주 사용됩니다. 여기서는 람다 함수가 코딩 테스트에서 어떻게 활용되는지와 관련하여 설명드리겠습니다.
람다 함수는 익명 함수로, 이름 없이 정의되는 함수를 말합니다.
보통 한 줄로 간결하게 표현되며, 주로 함수의 인자로 넘기거나 간단한 연산을 수행하는 데 사용됩니다. 주로 함수 정의를 간략하게 나타내기 위해 사용되며, 즉석에서 사용하고 버릴 함수가 필요한 경우 유용합니다.
lambda 매개변수들: 표현식
sorted() 함수를 사용하여 리스트를 길이에 따라 오름차순으로 정렬하는 예제입니다.
일반 함수 사용
def get_length(word):
return len(word)
words = ["apple", "banana", "cherry", "date"]
sorted_words = sorted(words, key=get_length)
print(sorted_words) # 출력: ['date', 'apple', 'banana', 'cherry']
람다 함수 사용
words = ["apple", "banana", "cherry", "date"]
sorted_words = sorted(words, key=lambda x: len(x))
print(sorted_words) # 출력: ['date', 'apple', 'banana', 'cherry']
람다 함수를 사용하여 짝수와 홀수를 구분하는 예제입니다.
일반 함수 사용
def is_even(number):
return number % 2 == 0
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
even_numbers = list(filter(is_even, numbers))
print(even_numbers) # 출력: [2, 4, 6, 8]
람다 함수 사용
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers) # 출력: [2, 4, 6, 8]
람다 함수를 사용하여 리스트 컴프리헨션으로 새로운 리스트를 생성하는 예제입니다.
일반 함수 사용
def square(number):
return number ** 2
numbers = [1, 2, 3, 4, 5]
squared_numbers = [square(x) for x in numbers]
print(squared_numbers) # 출력: [1, 4, 9, 16, 25]
람다 함수 사용
numbers = [1, 2, 3, 4, 5]
squared_numbers = [(lambda x: x ** 2)(x) for x in numbers]
print(squared_numbers) # 출력: [1, 4, 9, 16, 25]
map() 함수를 사용하여 리스트의 모든 요소를 제곱하는 예제입니다.
일반 함수 사용
def square(number):
return number ** 2
numbers = [1, 2, 3, 4, 5]
squared_numbers = list(map(square, numbers))
print(squared_numbers) # 출력: [1, 4, 9, 16, 25]
람다 함수 사용
numbers = [1, 2, 3, 4, 5]
squared_numbers = list(map(lambda x: x ** 2, numbers))
print(squared_numbers) # 출력: [1, 4, 9, 16, 25]