입/출력
1. 입력 1) 빠르게 입력받기 - 데이터 개수가 1000만개 이상, 탐색 범위 크기가 1000억 이상이면 sys 라이브러리로 입력을 빠르게 받기 - import sys input_data = sys.stdin.readline().rstrip() 2. 출력 1) sep과 end 조건 - sep : print문의 출력문들 사이 값들 정의 ( default = "") ex) print("I","Like","쿼카",seq = ",") ==> I,Like,쿼카 - end : print문으로 출력 완료 후의 값 정의 (default = \n) ex) print(array,end = "!") ==> [1,2,3]! 2) format - 특정 서식에 따라 문자를 출력 - print( "{0}월 {1}일 입니다.".f..
더보기
정렬
0.정렬 - 데이터를 특정한 기준에 따라서 순서대로 나열하는 것 - 삽입 정렬, 퀵 정렬, 계수 정렬 1. 선택 정렬 - 가장 작은 데이터를 선택해서 맨 앞에 있는 데이터와 바꾸고, 그 다음 작은 데이터를 앞에서 두번째 데이터와 바꾸는 과정을 반복하는 정렬 - 최악의 경우 : 데이터가 내림차순으로 있는 경우 - 시간 복잡도 : N + (N-1) + (N-2) + ...+ 1 = N *(N+1) / 2 = O(N^2). #선택 정렬 array = [7,5,9,0 ,3,1,6,2,4,8] for i in range( len(array) ): min_index = i #가장 작은 원소의 인덱스 for j in range(i_1, len(array)): if array[min_index] > array[j]: ..
더보기
python 기초 - 구현
1. python 기초 문법 (c++과 다른 점 ) - 리스트 길이 : len(array) - && || 대신 and or사용 - else if 대신 elif사용 - 형 변환 #기본 변환 정수 변환 - int() 실수 변환 - float() 문자열 변환 - str() 문자 변환 - chr() 불리언 변환 - bool() #기타 변환 char -> int : ord() 2. 구현 예 - 좌표 이동 #매개변수 입력받기 N = int(input()) x,y = 1, 1 #이런 식으로 각각 좌표값 입력 array = input().split() #북, 동, 남, 서 dx = [0,1,0,-1] dy = [-1,0,1,0] move_types = ['L', 'R', 'U', 'D'] #이동 for x in pla..
더보기
중복 제거
1. SET - 중복을 허용하지 않으며, set 내부 값들은 순서가 존재하지 않음 - 리스트 자료형을 SET으로 타입 변경 후 다시 LIST로 감싸줌 - list(set(array)) - set 타입은 print시 중괄호 {}, 리스트는 print시 대괄호 [] 2. for 반복문 array = [6,5,6,1,3,6,4,5,2] result = [] for i in array: if value not in result: result.append(value) print(result) 3.dictionary(3.7 이상 가능 자료구조) - 중복이 불가능한 자료구조 - key,value의 쌍으로 하나의 데이터를 이루는데, key값이 중복 불가함 - dict.fromkeys( array ) : 인자로 들어온 ..
더보기