파이썬
-
[자료구조] 트리Algorithms & Data Structure 2022. 1. 20. 19:44
트리 (Tree) 1. 트리 구조 트리: Node, Branch로 이루어진 그래프로 사이클을 이루지 않도록 구성한 데이터 구조이다. 트리는 탐색(검색) 알고리즘 구현을 위해 많이 사용된다. Node: 트리에서 데이터를 저장하는 기본 요소. Root Node: 트리 맨 위에 있는 노드 이다. Level: 최상위 노드를 Level 0이며, 하위 Branch로 연결된 노드의 깊이를 나타낸다. Parent Node: 어떤 노드의 다음 레벨에 연결된 노드 Child Node: 어떤 노드의 자식 노드 Leaf Node (Terminal Node): Child Node가 하나도 없는 노드 (가장 맨 끝의 노드) Sibling (Brother Node): 동일한 Parent Node를 가진 노드 Depth: 트리에서 ..
-
[큐] 1966 프린터 큐백준 Online Judge 2022. 1. 19. 21:09
백준 문제 1966 난이도: 하 문제 유형: 큐, 구현, 그리디 enumerate 함수 설명 순서가 있는 자료형 (e.g. 리스트, 튜플, 문자열)을 입력 받아서 인덱스 값과 함께 보여준다. >>> for i, name in enumerate(['kim', 'han', 'park']): print(i, name) 0 kim 1 han 2 park 문제 풀이 코드 test_case = int(input()) for _ in range(test_case): n, m = list(map(int, input().split(' '))) queue = list(map(int, input().split(' '))) # 튜플 형식으로 넣는다. [2, 1, 4, 3] -> [(2, 0), (1, 1), (4, 2), (..
-
[n511] Python ProgrammingAI 부트캠프 2022. 1. 18. 10:33
프로그래밍과 문제해결 알고리즘 : 효율적인 문제 해결 프로세스 자료구조 : 프로그램 또는 데이터 구조 문제를 해결할 때 가장 중요한 점은 최소 비용, 최대 효율! 정규표현식 [정규표현식] re 모듈 정규표현식 regular expression 특정한 패턴과 일치하는 문자열을 '검색', '치환', '제거' 하는 기능을 지원 정규표현식의 도움없이 패턴을 찾는 작업(Rule 기반)은 불완전 하거나, 작업의 cost가 높음 e. da-journal.com 다양한 메소드의 활용 rjust(width, [fillchar]) 특정 문자를 원하는 문자로 지정한 길이만큼 채우는 메소드이다. #"0abcd" print("abcd".rjust(5,"0")) # 원하는문자열.rjust(몇개만큼채울까, "무엇으로 채울까") z..
-
[자료구조] 큐 (Queue)Algorithms & Data Structure 2022. 1. 13. 21:57
Queue란 무엇인가? 큐는 가장 먼저 넣은 데이터를 가장 먼저 꺼낼 수 있는 데이터 구조이다. FIFO 또는 LILO 정책. 즉, 스택 과는 반대이다. Enqueue : 데이터 넣기 Dequeue : 데이터 빼기 Queue()로 큐 만들기 import queue data_queue = queue.Queue() #데이터 입력 data_queue.put("Good day") data_queue.put(1) #큐 크기 출력 data_queue.qsize() #큐에 입력된 데이터 출력 data_queue.get() LIFO Queue() 마지막 넣은 데이터가 먼저 출력되는 구조. import queue data_queue = queue.LifoQueue() data_queue.put("Good") data_q..
-
[자료구조] 스택 (Stack)Algorithms & Data Structure 2022. 1. 13. 21:06
스택이란? 나중에 들어간 데이터를 가장 먼저 출력하는 구조이다. 쉽게 설명하자면, 뷔페에서 쌓아둔 접시들을 예시로 들 수 있다. 층층이 쌓인 접시들 중에서 가장 마지막으로 쌓은 접시를 손님들은 가장 먼저 가져간다. 스택에 무언가를 삽입하고자 했는데 이 스택이 이미 꽉 찬 상태여서 나타나는 에러를 Stack Buffer Overflow 스택 버퍼 오버플로우라고 한다. 개발자들의 빛과 희망과 같은 스택 오버플로우 웹사이트 이름도 여기에서 유래했다! 깔깔깔. 컴퓨터 내부의 프로세스 구조의 함수 동작 방식 파이썬에서는 스택 자료형을 따로 지원하지는 않지만, 리스트로 만들 수 있다. 스택 : LIFO , FILO LIFO (Last-In-First-Out) : 나중에 들어간 것이 먼저 나온다. FIFO (Firs..
-
[n121] T-Test (One-Sample T-Test, Two-Sample T-Test, Chi-Square Test)AI 부트캠프 2021. 9. 16. 21:01
One Sample t Test : 하나의 값과 하나의 집단 평균 검정 Two Sample t Test : 두 집단 간 평균 검정 Levene Test : 두 집단 간 분산 검정 Chi^2 Test : 두 항목 간 독립 검정 One-Sample T-Test (일표본 평균 검정) 귀무 가설 : a값은 집단의 평균과 같다. 대립 가설 : a값은 집단의 평균과 다르다. df1은 다음과 같을 때, 멤버십 계약을 한 사람들의 평균 가격이 전체 평균 가격과 같은지 비교해 보자. cond1 = (df1['type_of_contract'] == '멤버십') df1_member = df1.loc[cond1] # 귀무가설 : 96900원은 멤버십 집단의 평균과 같다. # 대립가설 : 96900원은 멤버십 집단의 평균과 다..
-
[백준] 1236 성 지키기백준 Online Judge 2021. 9. 14. 21:14
1236번: 성 지키기 첫째 줄에 성의 세로 크기 N과 가로 크기 M이 주어진다. N과 M은 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 성의 상태가 주어진다. 성의 상태는 .은 빈칸, X는 경비원이 있는 칸이다 www.acmicpc.net 문제 설명 모든 행과 열에 한 명 이상의 경비원이 있어야 한다. 입력 : 첫 번째 줄에는 행과 열의 수 그 이후부터 '.'은 빈칸, 'X'는 경비원 출력 : 필요한 경비원 수 # 행과 열의 개수 입력 받는다 n, m = map(int, input().split()) array = [] # 경비관의 유/무 여부를 입력 받는다. for _ in range(n): array.append(input()) # row, column에 처음 기본 값으로 0을 채워..
-
[n112] Feature EngineeringAI 부트캠프 2021. 9. 10. 16:25
Feature Engineering란 무엇인가 Raw data에서 수학, 통계, 도메인 knowledge들을 이용하여 유용한 features를 재조합 및 추출하는 과정이다. 예를 들어, outlier detection, one hot encoding, handling missing values 등이 있다. Garbage In -> Garbage Out, 즉 정돈 되지 않은 데이터를 넣으면 결과값도 garbage일 수 밖에 없다. 그러므로 Feature engineering으로 유용한 데이터를 추출할 필요가 있다. DataFrame 간단히 설명하자면, 데이터 프레임은 테이블 형태의 데이터이다. NaN, Null, 0, Undefined 의 차이는 무엇인가 Nan는 float 타입을 갖는다. String R..