본문 바로가기
728x90
반응형

스택2

[프로그래머스_스택/큐] 같은 숫자는 싫어 (파이썬) 문제 설명 (https://school.programmers.co.kr/learn/courses/30/lessons/12906?language=python3) 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면, arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return 합니다. arr = [4, 4, 4, 3, 3] 이면 [4, 3] 을 return 합니다. 배열 arr에서 연속적으로 나타나는 숫자는 제거하고 남은 수들을 return 하는 .. 2022. 12. 6.
재귀함수와 스택(Stack) 재귀함수 : 자기자신을 호출하는 함수 이때 stack 이라는 자료 구조를 사용하여 작동한다. 재귀함수는 for문 즉 반복문의 대체자이다. n 입력값을 3으로 가정하고 설명을 해보겠습니다. 12 줄: 입력값 n 즉, 3 을 받음. 13 줄: DFS(3): DFS함수를 호출하여 3을 넘김. 4 줄: 함수 DFS (3) if 문 실행 5 줄: 만약 x 가 0보다 크다면 실행. 0이거나 작으면 종료 6 줄: x 출력 -> 3이 출력됨. 7줄 ; DFS 함수 호출 [이 부분이 재귀함수이다. 왜냐하면 자기자신의 함수를 호출하기 떄문에 ] DFS(3-1) 로 DFS(2)가 되며 함수 DFS를 호출함 다시 4번줄로 올라가서 def DFS(2): 가 되면서 5번줄: if 2> 0 : 가 실행되고 참이므로 6번줄: pri.. 2022. 10. 9.
728x90
반응형