본문 바로가기
Postech

IT 관련 용어 정리 (3)

by 나비스 2024. 6. 21.


Recursion

함수가 자기 자신을 호출하여 문제를 해결하는 프로그래밍 기법이다.
호출 횟수를 제한하는 조건문이 필요하다. 만약 이 조건문이 없으면 무한히 재귀 호출이 발생한다.

-장점
1. 코드의 간결성 : 반복문 사용보다 더 간결한 코드를 사용할 수 있다.
2. 문제 해결의 용이성 : 몇몇 문제에서는 더 용이하다. 예를 들어 트리구조, 그래프 탐색 문제가 있다.

- 단점
1. 메모리 사용량 증가 : 자신을 호출하는 과정에서 스택 메모리를 사용하게 되므로, 호출 횟수가 많을 경우 메모리 사용량이 증가한다.
2. 실행 속도 저하 : 반복문보다 함수 호출과 반환에 대한 오버헤드가 더 크므로, 실행속도가 느려질 수 있다.


ADT Abstract data type

1. Stack 후입 선출
스택 (stack) 은 배열의 끝에서만 데이터를 접근할 수 있는 선형 자료구조이다. 스택은 배열 인덱스 접근이 제한되며, 후입선출 (last in first out, LIFO) 구조이다. 책상 위에 쌓여 있는 책을 상상해보자. 맨 위의 책을 가져올 순 있지만, 맨 아래 또는 중간의 책은 꺼낼 수 없는 구조라고 생각하면 편하다.
스택의 동작은 다음과 같으며, 시간 복잡도는 모두 O(1) 이다.
• push: 스택의 맨 끝 (또는 맨 위) 에 항목을 삽입한다 (create).
• pop: 스택의 맨 끝 (또는 맨 위) 의 항목을 반환하는 동시에 제거한다 (delete).
• top/peek: 스택의 맨 끝 항목을 조회한다 (read).
• empty: 스택이 비어 있는지 확인한다.
• size: 스택 크기를 확인한다.

2. Queue 선입 선출
큐 (queue) 는 스택과 반대이다. 들어온 순서대로 접근 가능하다. 이름 그대로 줄 서서 기다리는 사람들 (큐) 로 생각하면 쉽다. 즉, 먼저 들어온 데이터가 먼저 나가는 선입선출 (first in first out, FIFO) 구조이다. 큐의 동작은 다음과 같으며, 시간 복잡도는 모두 O(1) 이다.
• enqueue: 큐 뒤쪽에 항목을 삽입한다.
• dequeue: 큐 앞쪽의 항목을 반환 및 제거한다.
• peek/front: 큐 앞쪽의 항목을 조회한다.
• empty: 큐가 비어 있는지 확인한다.
• size: 큐의 크기를 확인한다.

 



Constructor 

객체를 생성할 때 호출되는 함수로써, 객체 생성 시 초기화 작업을 위해 존재


메소드 오버라이딩(method overriding)

• 부모 클래스(상속한 클래스)에 있는 메소드를 동일한 이름으로 다른 기능으로 구현하는 것(덮어쓰기)
• 부모 클래스의 메소드 대신 오버라이딩한 메소드가 호출됨

 

연산자 오버로딩

• 인스턴스 객체끼리의 연산을 위해 기존의 연산자 기능을 중복하여 정의한다.

 

함수

독립적으로 수행하는 프로그램 단위로 특정 작업을 수행하는 명령어들의 모음에 이름을 붙인 것으로 반복적으로 수행되는 기능을 함수로 만들어 호출한다.
함수는 작업에 필요한 매개변수를 전달받을 수 있으며, 작업이 완료된 후 작업의 결과를 반환할 수도 있다.

과정
1. 정의
2. 호출
3. 반환값 활용
result = func1(”kim”)

 

모듈

함수나 변수 또는 클래스 들을 모아 놓은 파이썬 문장들이 저장된 파일이다.

'Postech' 카테고리의 다른 글

IT 관련 용어 정리 (2)  (0) 2024.06.20
IT 관련 용어 정리 (1)  (0) 2024.06.19