코드테스트

프로그래머스 1주차: 스택&큐

Bomme 2021. 5. 19. 17:05

스택: lifo. stack, peek, pop. 웹페이지 뒤로가기 앞으로가기.

큐: fifo. 프린터 인쇄대기열. 컨베이어 벨트

 

 

1-1)프로그래머스 주식가격

 

#강의에서 배운 스택(append) 이용해서 풀기

#문제내용 이해보다는 주어진 리스트값을 이용해서 결과값을 도출해내는것을 중점으로 접근해보기

#코드의 효율성도 중요하다. 

 

1-2)프로그래머스 기능개발

#pop함수 이용하기

#cnt+=1 위치에  따른 출력값 차이 인지하기

#zip 이용. 두 리스트를 1대1 대응할 수 있다. 

#append 뒤에 간단하게 if 조건 붙일 수 있다.

#if break문이 아직 낯선데, 익숙해지기

#import deque를 하지 않은이상, pop(0)을 제거하는것이 바람직

#계속 list range 에러 뜸

 

 

1-3)프로그래머스  다리를 지나는 트럭

 

 

#순서대로 지나가야 하니까 fifo. pop으로 풀기

#[0]으로 이뤄진 리스트 que에서 [0,트럭] [트럭,트럭] [트럭,0] [0,0] 이런순서로

#line10에 que[0]으로 했더니 답은 나오는데 실행속도가 너무 느림....#sum[que]로 바꾸니까 됐다. 

#이렇게 긴데 실행속도가 엄청 빠르다고함. 나도 이렇게 생각해보도록 해야지.

 

 

#deque? (덱) - 1,2번 문제풀이에서 모범답안에서 자주 쓰인 라이브러리.

double ended queue의 약자.

일차원 선형자료

스택과 큐의 연산을 모두지원. 양끝에서 삽입과 삭제가능.

시간도 짧게 걸린다! 

append

appendleft

insert

extend

pop

popleft