------------------------------------- 오늘의 학습 키워드 --------------------------------------
스택/큐
스택 : 후입선출(LIFO, Last In First Out) 원칙을 따릅니다. 즉, 가장 나중에 삽입된 요소가 가장 먼저 제거
일상적인 물건의 쌓아 올리기와 같은 방식으로 데이터를 처리
- 푸시(push): 스택의 상단에 요소를 추가합니다.
- 팝(pop): 스택의 상단에서 요소를 제거하고 반환합니다.
- 피크(peek) 또는 탑(top): 스택의 상단에 있는 요소를 반환하지만, 제거하지는 않습니다.
- 비어있는지 확인(is_empty): 스택이 비어 있는지 여부를 확인합니다.
큐 : 데이터 구조 중 하나로, 선입선출(FIFO, First In First Out) 원칙을 따릅니다. 큐는 일상적인 대기 줄이나 처리 대기
목록과 같은 개념을 모델링하는데 유용
- 인큐(enqueue): 큐의 끝에 요소를 추가합니다.
- 디큐(dequeue): 큐의 앞에서 요소를 제거하고 반환합니다.
- 피크(peek) 또는 프론트(front): 큐의 앞에 있는 요소를 반환하지만, 제거하지는 않습니다.
- 비어있는지 확인(is_empty): 큐가 비어 있는지 여부를 확인합니다
-------------------------- 공부한 내용 본인의 언어로 정리하기 --------------------------
'''
배열 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 하는 solution 함수를 완성해 주세요.
제한사항
배열 arr의 크기 : 1,000,000 이하의 자연수
배열 arr의 원소의 크기 : 0보다 크거나 같고 9보다 작거나 같은 정수
'''

1. for문을 이용하여 arr의 매개변수를 설정하고 반복해준다
2. answer 값이 i안에 없을 경우
3. i값을 answer에 추가하고
4. answer값을 반환한다.
-------------------- 어떤 문제가 있었고, 나는 어떤 시도를 했는지 -------------------
테스트 통과가 1은 안되는데 2테스트는 통과됨.
이건 분명 어디 선가 출력이 잘못되는것임. 함수 설정을 잘못해준거라고 생각됨.
----------------------------------- 어떻게 해결했는지 ----------------------------------------

if answer[-1:] == [i]: continue: answer 이걸 사용해서 풀었따.
--------------------------------- 무엇을 새롭게 알았는지 -----------------------------------
- for i in arr:: arr 리스트의 각 요소를 i라는 변수에 담아 반복
- if answer[-1:] == [i]: continue: answer 리스트의 마지막 요소와 현재 반복 중인 i가 동일한지 비교
여기서 answer[-1:]는 answer 리스트의 마지막 요소를 단일 요소 리스트로 반환합니다. 예를 들어, answer가 [5, 6, 7]이라면 answer[-1:]는 [7]이 됩니다.
따라서, 이 조건문은 answer 리스트의 마지막 요소가 현재 반복 중인 i와 같다면, 현재 반복을 건너뛰고 다음 요소로 넘어가게 합니다 (continue는 현재 반복을 종료하고 다음 반복으로 이동합니다).
-------------------------------- 내일 학습할 것은 무엇인지 ---------------------------------
1. 프로그래머스 문제풀기
2. 개인과제 하기
3. 스쿼드 집중하기!!!!
'Daily note' 카테고리의 다른 글
Today I Learned(TIL)-27 (0) | 2024.07.30 |
---|---|
Today I Learned(TIL)-26 (0) | 2024.07.29 |
Today I Learned(TIL)-24 (0) | 2024.07.27 |
Today I Learned(TIL)-23 (0) | 2024.07.26 |
Today I Learned(TIL)-22 (0) | 2024.07.25 |