코딩 테스트 합격자 되기 파이썬 편 4

파이썬 코딩테스트 스터디 8주차 #1 - 그래프 개념

그래프의 개념그래프 용어 정리  동그라미 : 노드화살표 : 간선간선 위 숫자 : 가중 그래프의 특징과 종류방향성, 가중치, 순환 특성에 따라 종류 구분 흐름을 표현하는 방향성간선은 방향이 있는 것도(방향 그래프), 없는 것도 있다.(무방향 그래프) 흐름의 정도를 표현하는 가중치 시작과 끝의 연결 여부 순환 그래프, 비순환 그래프  그래프 구현서울에서 부산으로 유동 인구 8,000명 발생.그래프의 노드, 간선, 방향, 가중치로 연결해보기데이터 담고 있는 노드 : 서울, 부산노드 잇는 간선 : 서울과 부산 연결 유무간선의 방향 : 서울 → 부산 간선의 가중치 : 8,000명 그래프의 구현 방식 1. 인접 행렬2. 인접 리스트 인접 행렬 그래프 표현: 배열을 활용하는 경우가 많음. 배열의 인덱스: 노드배열의 ..

파이썬 코딩테스트 스터디 7주차 #2 - 몸풀기 문제 : 간단한 유니온 - 파인드 알고리즘 구현하기

Operations에 있는 연산 모두 수행 후 집합 개수 반환하는Solution 함수 구현하기 상호배타적 집합 표현시 다음 두 연산 필요1. uinon(x,y) : x와 y가 속한 두 집합 합치기2. find(x): x가 속한 집합의 대표 원소 찾기 operations라는 배열은 수행할 연산 의미['u',1,2]는 노드 1과 노드 2에 대해 union 연산 수행['f',3] 노드 3의 루트 노드 찾기, find연산 수행  제약 조건0  ≤  k  ≤  1,000 : 노드의 개수1  ≤   len(operations)  ≤  1000,000operations[i][0]은 문자열 'u' 또는 'f' 중 하나'u'는 union연산, uinon 연산 뒤로는 두 개의 정수 x,y가 나옴'f 는 find 연산, f..

파이썬 코딩테스트 스터디 3주차 #5 - 주식 가격

문제 주식 가격초 단위로 기족된 주식 가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 반환하도록 solution()함수를 완성하세요.     O(N2) 실패 코왜...? 때문에...?def solution(prices): answer = [] for i, vali in enumerate(prices): cnt = 0 for j , valj in enumerate(prices[i+1:]): if vali O(N2) 성공@stella님 코드# Stella님 코드def solution(prices): answer = [] for i in range(len(prices)): count..

파이썬 코딩테스트 스터디 2주차 #2 - 자주 활용하는 리스트 기법

리스트에 데이터 추가데이터 삽입 방법 1. append() 가장 끝 인덱스에 데이터가 추가됨.   데이터 삽입 방법 2.+ 연산자   데이터 삽입 방법 3.insert() insert() 메소드를 사용하면, 특정 위치에 데이터 삽입 가능   리스트에 데이터 삭제데이터 삭제 방법 1. pop() 특징1. 인덱스를 인수로 받는다특징2. 삭제한 데이터의 값을 반환한다.  데이터 삭제 방법 2. 인수로 인덱스가 아닌, 데이터 자체를 받아 해당 데이터 삭제단, 값이 여러개인 경우 인덱스가 제일 낮은 즉 제일 처음 나오는 데이터만 삭제   리스트에 컴프리헨션으로 데이터 특정 연산 적용기존 리스트를 기반으로 새로운 리스트를 만들거나반복문, 조건문을 이용해 복잡한 리스트를 생성하는 등 다양한 상황에서 사용 가능한 문법..