본문 바로가기

자료구조 알고리즘16

[백준] 2439번: 별 찍기 -2 [Pythton] [백준] 2439번: 별 찍기 -2 [Pythton] 문제 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오 입력 첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다. 출력 첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다. 풀이 N = int(input()) for i in range(1, N+1): print(" "*(N-i) + "*"*i) 메모 자리수가 N개로서 계속 반복해도 변함 없음. 공백과, *의 규칙 찾기 출처 Baekjoon ONLINE JUDGE 2022. 9. 11.
자료구조 - 스택(stack) 언어는 python을 사용하였습니다. 3. 스택(Stack) 스택은 데이터를 임시 저장할 때 사용하는 자료구조로서, 한쪽 끝에서만 자료를 넣거나 뺄 수 있는 구조 입니다. 기본적으로 가장 나중에 넣은 데이터를 가장 먼저 뺄수있는 LIFO(Last- in, First-Out) 구조 입니다. 삽입 삭제 데이터를 스택에 넣기 push() 데이터를 스택에서 빼기 pop() 장, 단점 (장점) 구조가 단순해서 구현하고 쉽고, 덕분에 데이터의 저장 읽기 속도가 빠르다 (단점) 데이터의 갯수를 미리 정해 그에따른 저장공간을 확보해야 한다, 따라서 공간의 낭비가 발생할수도 있다. 파이썬의 경우 재귀 함수는 최대 1000번까지만 호출이 가능하다. 파이썬 리스트를 통한 스택 구현 #리스트 생성 data_stack = li.. 2022. 9. 11.
자료구조 - 큐(Queue) 언어는 python을 사용하였습니다. 2. 큐(Queue) 가장 먼저 넣은 데이터를 가장 먼저 꺼내는 선입선출(FIFO) 구조 입니다. FIFO(First-In, First-Out) 또는 LILO(Last-In, Last-Out) 방식으로 스택과 꺼내는 순서가 반대 큐의 경우 멀티 태스킹을 위한 프로세스 스케줄링 방식을 구현하기위해 OS에서 많이 사용된다. 삽입, 삭제 큐에 데이터를 추가하는 작업 인큐(Enqueue) 큐에 데이터를 꺼내는 작업 디큐(dequeue) 데이터를 꺼내는 쪽 프런트(front) 데이터를 넣는 쪽 리어(rear) 파이썬에서의 큐(Queue) 파이썬에서는 queue 라이브러리를 통해 다양한 큐 구조를 제공한다 일반적인 Queue, LIFO 구조의 LifoQueue(), 우선순위를 .. 2022. 9. 9.
자료구조 - 배열 (Array) 언어는 python을 사용하였습니다. 1. 배열(Array) 데이터를 나열하고, 각 데이터 인덱스에 대응하도록 구성하는 데이터 구조 파이썬에서는 리스트(list)와 튜플(tuple)로 구현한다. 같은 종류의 데이터를 효율적으로 관리하고, 순차적으로 저장하기 위해 사용 또한 다른 언어의 경우 배열의 데이터 타입을 정해주어야 하지만, 파이썬의 경우 하나의 배열에 여러가지 데이터 타입이 올 수 있다. 특징 (장점) 인덱스 번호로 데이터에 접근할수 있기 때문에 빠르다. (단점) 미리 길이를 설정해야 하므로 데이터의 추가/삭제가 어렵다. but 파이썬에서는 길이를 미리 정할 필요가 없이 가변적 이다. 예시 # 1차원 배열: 리스트로 구현시 data_list = [1, 2, 3, 4, 5] # 2차원 배열: 리스트.. 2022. 9. 9.