스택 5

[Algorithms] 스택,큐,해쉬,힙-후위 표기식 만들기(스택)

윤성우 자료구조에 나왔던 방식으로 풀어봄 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 import sys # sys.stdin = open("input", "rt") equ=input() def return_priority(ch): if ch=="*" or ch=="/": return 3 elif ch=='+' or ch=='-': return 1 else: return -1 def who_is_precede(pre, aft): if return_priority(pre) >= return_priority(aft): return 1 else: ..

[Algorithms] 스택,큐,해쉬,힙-쇠막대기(스택)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 import sys sys.stdin = open("input", "rt") code=input() stack=[] piece=0 for i in range(len(code)): if code[i]=='(': # '(' 면 stack에 쌓아주고 stack.append(code[i]) else: if code[i-1]=='(': # '()' 면 레이저 발사 stack.pop() # 스택에 쌓인 막대 개수만큼 조각이 난다 piece+=len(stack) else: stack.pop() # '))' 면 막대 하나가 끝남 piece+=1 # 따라서 마지막의 1조각 더해준다 print(piece) Colored by Color ..

[Algorithms] 스택,큐,해쉬,힙-가장 큰 수(스택)

m 개의 숫자는 꼭 제거 해야한다는 점 명심 숫자의 순서는 유지되야 한다는 점 명심 너무 헤맸다... ㅠ흑 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 import sys # sys.stdin = open("input", "rt") n, m = map(int, input().split()) number = list(map(int, str(n))) # n이라는 int형 정수를 str으로 변환 후 각각의 letter에 대해 int를 적용해서 리스트화 한다 stack=[] for i in number: while stack and m > 0 and i > stack[-1]: # stack이 비어있지 않고 / 제거해야 할 수가 0이 아직 안됐고 / 스택의 마지막 숫자가 ..

[Data Structures] 스택 (Stack)

1. 스택이란 선형 자료구조의 일종 한쪽은 막히고 한쪽은 뚫려있는 초코볼 통에 비유할 수 있다 후입선출 = Last In, First Out! (LIFO) 2. 스택 ADT와 헤더 파일 정의 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 #ifndef __AB_STACK_H__ #define __AB_STACK_H__ #define TRUE 1 #define FALSE 0 #define STACK_LEN 100 typedef int Data; typedef struct _arrayStack { Data stackArr[STACK_LEN]; int topIndex; } ArrayStack; typedef Ar..

728x90