[파이썬] DFS/BFS(깊이 우선 탐색, 너비 우선 탐색) 포스팅 썸네일 이미지

Developer/Python

[파이썬] DFS/BFS(깊이 우선 탐색, 너비 우선 탐색)

DFS와 BFS에 대한 간단한 설명과 이해에 필요한 자료구조 설명은 다음 글을 참고 [TIL] 2022-03-23/24 / 3, 4일차 오늘 배운 내용(3, 4일차) 자료구조와 알고리즘 실력 있는 개발자일수록 올바른 데이터, 자료구조 그리고 알고리즘을 골라 좋은 소프트웨어를 만들 수 있다. 적절한 자료구조와 알고리즘을 통해 mieumje.tistory.com [TIL] 2022-03-28 / 6일차 오늘 배운 내용 프로그래머스 입국심사 문제 풀이 코딩테스트 연습 - 입국심사 n명이 입국심사를 위해 줄을 서서 기다리고 있습니다. 각 입국심사대에 있는 심사관마다 심사하는데 걸리는 시간 mieumje.tistory.com 그래프를 탐색하기 위한 대표적인 두 알고리즘 - 이것이 취업을 위한 코딩 테스트다 wit..

2022.04.21 게시됨

[파이썬] 구현 포스팅 썸네일 이미지

Developer/Python

[파이썬] 구현

구현 머릿속에 있는 알고리즘을 정확하고 빠르게 프로그램으로 작성하기 "피지컬로 승부하기" - 이것이 취업을 위한 코딩 테스트다 with 파이썬 코딩 테스트 유형 중 "구현"이란 말 그대로 구현하는 것이다. 정확히는 앞서 언급한 것처럼 "머릿속에 있는 알고리즘을 정확하고 빠르게 프로그램으로 작성하는 것"이다. 코딩 테스트 문제를 풀기 위해서는 구현을 해야 하므로 구현 문제 유형은 모든 범위의 코딩 테스트 유형을 포함하는 포괄적인 개념이다. 어떤 문제를 해결하고자 할 때, 해당 문제를 "어떻게 풀어야 하는지?" 방법에 대한 고민을 하게 된다. 이 과정의 결과로 해결 방법이 떠올랐을 때, 그 문제를 "풀었다, 정답을 맞혔다."라고 할 수 있는가? 그렇지 않다. 머릿속의 과정을 프로그래밍 언어로 옮겨 구현을 하..

2022.03.20 게시됨

[파이썬] 그리디(Greedy) 알고리즘 포스팅 썸네일 이미지

Developer/Python

[파이썬] 그리디(Greedy) 알고리즘

그리디(Greedy) 알고리즘 당장 좋은 것만 선택하는 알고리즘 "그리디(Greedy) 알고리즘은 단순하지만 강력한 알고리즘이다." - 이것이 취업을 위한 코딩 테스트다 with 파이썬 그리디(Greedy)란 단어를 번역하면 "탐욕스러운"이라는 뜻이다. 그리디 알고리즘을 말할 때 탐욕법이라고 불리는 이유이다. 여기서 '탐욕법'이라는 말의 뜻은 '현재 상황에서 가장 좋은 방법을 취하는 것'을 의미한다. 그리디 알고리즘을 이용하면 그 순간 '가장 좋은 것'만을 선택하여 적용하고, 그 이후의 상황은 고려하지 않는 것이다. 그리디 알고리즘과 다른 알고리즘을 비교했을 때 차이점은 다음과 같다. 다른 알고리즘을 사용하기 위해서는 사용법을 정확하게 알고 있어야 하지만, 그리디 알고리즘은 그렇지 않다는 것이다. 예를 ..

2022.03.11 게시됨

[파이썬] 파이썬 리스트 컴프리헨션 / 프로그래머스 메뉴 리뉴얼 포스팅 썸네일 이미지

Developer/Python

[파이썬] 파이썬 리스트 컴프리헨션 / 프로그래머스 메뉴 리뉴얼

정수 1부터 10까지가 담긴 리스트를 생성하려면 파이썬에서 다음과 같이 작성한다 arr = [] for i in range(1, 11): arr.append(i) print(arr) # [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 반복문을 통해 정수를 리스트에 넣는 것이다. 이것을 반복문을 활용한 컴프리헨션이라고 한다. 1부터 10까지 담긴 리스트를 생성하는 리스트 컴프리헨션의 형태는 다음과 같다. 리스트 컴프리헨션 형태 [i for i in range(1, 10)] 리스트 = [ 수식 for 항목 in range() ] 형식 반복문을 활용해 1부터 10까지가 담긴 리스트를 생성하는 것을 리스트 컴프리헨션 형태로 만들면 다음과 같다. arr = [] for i in range(1, 11): ..

2022.01.13 게시됨

[파이썬] 파이썬 heapq(힙큐) / 프로그래머스 더 맵게 포스팅 썸네일 이미지

Developer/Python

[파이썬] 파이썬 heapq(힙큐) / 프로그래머스 더 맵게

힙큐 알고리즘 https://docs.python.org/ko/3/library/heapq.html heapq — 힙 큐 알고리즘 — Python 3.10.1 문서 heapq — 힙 큐 알고리즘 소스 코드: Lib/heapq.py 이 모듈은 우선순위 큐 알고리즘이라고도 하는 힙(heap) 큐 알고리즘의 구현을 제공합니다. 힙은 모든 부모 노드가 자식보다 작거나 같은 값을 갖는 docs.python.org 소스 코드 : Lib/heapq.py heapq(힙큐)는 파이썬의 내장 모듈로, 이진트리(binary tree) 기반의 최소 힙(min heap) 자료구조이다. tree(트리) 그래프와 함께 비 선형 구조로 루트 노드로 부터 가지를 뻗어나가는 형태를 취하고 있다. 트리는 이진트리(binary tree)는..

2022.01.11 게시됨

Developer/Python

[파이썬] 몫과 나머지

몫과 나머지 구하기 x = 5 print(5/2) # 2.5 5라는 숫자를 2로 나눌 때 "/" 기호를 사용해 나누게 된다. 이 경우 5를 2로 나눈 2.5가 출력된다. 나머지를 구하기 위해서 사용하는 기호는 "%"이다. 몫을 구할때는 "/"를 한 개 더 쓰면 된다. x = 5 print(5/2) # 2.5 print(5 // 2) # 2 print(5 % 2) # 1 5 // 2의 경우 5를 2로 나눈 몫이 나오고, 5 % 2의 경우 5를 2로 나눈 나머지가 나온다. divmod() 파이썬에서는 divmod라는 내장 함수가 존재하는데, 이 함수는 두 숫자를 인자로 받아 첫 번째 인자를 두 번째 인자로 나눈 몫과 나머지를 tuple 형식으로 return 해주는 함수이다. divmod(a, b) Take ..

2022.01.03 게시됨