전체 글
-
💡파이썬 큐(Queue) 이론 및 예제| 자료구조 & 알고리즘/자료구조 2023. 11. 10. 15:32
알고리즘 코딩 테스트를 준비하다 보면 다양한 자료구조를 만나게 됩니다. 그 중에서도 큐(Queue)는 스택과 함께 가장 기본적인 자료구조 중 하나입니다. 이번 글에서는 큐의 개념과 파이썬으로 구현하는 방법에 대해 알아보겠습니다. 큐(Queue)란? 알고리즘 코딩테스트에서 가장 자주 활용되는, 데이터를 저장하는 자료구조 중 하나 (BFS문제에서 자주 활용) 먼저 들어온 데이터가 먼저 나가는 선입선출(FIFO, First In First Out) 방식 입력과 출력이 각각 다른 방향에서 한쪽으로만 일어남 큐의 크기가 제한되어 있음 - 데이터의 크기만큼 크기가 결정됨. 따라서 C에서는 enQueue, deQueue 할때마다 메모리 재할당(realloc)이 필요하지만 파이썬에서는 신경 안써도 됩니다. 파이썬 메모..
-
💡파이썬 스택(Stack) 이론 및 예제| 자료구조 & 알고리즘/자료구조 2023. 11. 9. 00:36
스택(Stack)이란? 스택은 흔히 두 가지 의미로 사용됩니다. 자료구조로써의 스택, 프로세스 메모리 구조로써의 스택 메모리입니다. 본 포스트에서는 자료구조로써의 스택에 대한 내용을 다루고 있으니, 스택 메모리에 대해 궁금하신 분은 저의 이전 포스팅을 참고해주세요. (무려 2년 3개월 전 포스팅... 시간 참 빨라요) 알고리즘 코딩테스트에서 가장 자주 활용되는 자료구조 중 하나 (DFS문제에서 자주 활용) 가장 나중에 들어온 데이터를 가장 먼저 처리하는 후입선출(LIFO, Last In First Out) 방식 입출력이 한쪽에서만 일어남 스택의 크기가 제한되어 있음 - 데이터의 크기만큼 크기가 결정됨. 따라서 C에서는 push, pop 할때마다 메모리 재할당(realloc)이 필요하지만 파이썬에서는 신경..
-
💡파이썬 기본 입/출력| 자료구조 & 알고리즘/알고리즘 2023. 10. 21. 12:16
입력 # 방법1 import sys a = int(sys.stdin.readline()) # 한 개의 정수를 입력받을 때. 개행 같이 입력되나 int 형변환 시 처리되어 사라짐 a, b, c = map(int, sys.stdin.readline().split()) # 여러 개의 정수를 입력받을 때 # 방법2 a = int(input()) # 한 개의 정수를 입력받을 때 => 느리므로 지양할 것. 마지막 개행은 안 받아짐. 출력 # 방법1 import sys sys.stdout.write("asd\n") # 개행 직접 처리해주어야 함 # 방법2 print("asd") # 느려서 지양, 자동개행. 마지막 개행 안하려면 print("asd", end='')
-
💡코딩테스트 준비를 위한 효과적인 알고리즘 공부 방법| 자료구조 & 알고리즘/알고리즘 2023. 10. 21. 10:44
코딩 테스트는 개발자 진로를 희망하는 학생, 취준생, 직장인들이 부딪히는 난관입니다. 저 또한 비전공자로 취준을 시작해서, 수많은 코딩테스트를 치러 왔고, 마침내 최종합격하여 개발자로서 일하고 있습니다. 제 경험을 바탕으로 "코딩테스트 준비를 위한 효과적인 알고리즘 공부 방법"을 정리해볼까 합니다. 언어 선택 프로그래밍 언어는 아주 다양합니다. C, C++, Java, Python, JavaScript, Kotlin, Go, C#, Rust, Dart, Swift, Objective-C, 엄랭(ㅋㅋ), 등등...코딩테스트를 학습하려면 먼저 어떤 언어로 코딩할건지 정해야겠죠. 저는 취준할 때 조금 미련하게 했습니다. C, Python, Kotlin, Go, Java 다섯 가지 언어로 코딩테스트를 대비했습니..