💡우아한테크코스 인터뷰 과정에서 받았던 질문 중인 상속과 조합의 차이에 대하여 정리하였습니다. 개요상속과 조합은 객체지향 프로그래밍에서 객체 간의 관계를 모델링하는 중요한 개념입니다.두 개념은 코드 재사용과 객체 간의 관계를 명확히 하는 데 도움을 줍니다.“상속보다 조합을 사용하라”라는 말이 있는데, 그 이유를 알아보려 합니다.상속(Inheritance)상속은 자식 클래스가 부모 클래스의 속성과 메서드를 물려받는 개념입니다.부모 - 자식 관계를 형성하며, 자식 클래스는 부모 클래스의 기능을 확장하거나 재정의할 수 있습니다.is - a상속은 A는 B이다(A is B)라는 관계를 나타내며, 자식 클래스는 부모 클래스의 일종으로 간주합니다.이를 활용하면 부모 클래스에서 정의된 속성 및 메서드를 자식 클래스에..
코테를 준비하면서 자주 사용하는 알고리즘 & 함수를 정리합니다. Queue 선입 선출의 구조로 queue 라이브러리를 사용합니다. import queue data = queue.Queue() print(type(data)) queue에 데이터 넣기 data.put(2) data.put(3) data.put(4) 데이터 출력 print(data.get()) print(data.get()) print(data.get()) Stack 후입 선출 구조로 별도 라이브러리 없이 파이썬의 리스트를 사용합니다. stack = [] 데이터 넣기 stack.append(2) stack.append(3) stack.append(4) 데이터 출력 print(stack.pop()) print(stack.pop()) print(..
파이썬 라이브러리 순열과 조합의 경우 파이썬 내부의 라이브러리를 사용하면 직접 구현하는것 보다 훨씬 빠른 속도로 구현할 수 있다. 알고리즘 문제의 경우 빠른 속도를 요구하므로, 순열과 조합의 라이브러리를 꼭 숙지해야 한다. 순열과 조합은 매우 비슷해서 구분이 어렵고 헷갈리기 때문에 차이를 알고 구별할 수 있도록 학습한다. 파이썬에서는 itertools를 사용해서 순열과 조합을 구현할 수있다. from itertools import permutations https://docs.python.org/ko/3/library/itertools.html itertools — Functions creating iterators for efficient looping This module implements a nu..