본문 바로가기

전체 글63

좋은 알고리즘이란? / 알고리즘 평가법 좋은 알고리즘이란? / 알고리즘 평가법 좋은 코드 기준 시간 공간 (컴퓨터의 저장공간) 시간 복잡도 (Time Complexity) 데이터가 많아질수록 걸리는 시간이 얼마나 급격히 증가하는가 시간 복잡도를 계산하려면 알아야하는 약간의 수학 지식 거듭제곱과 로그 1부터 n까지의 합 점근 표기법(Big-O Notation) n 의 영향력이 더 큰 곳을 찾으면 된다. 핵심 : n 이 엄청 크다고 가정 n 이 별로 크지 않으면, 안 좋은 알고리즘을 써도 문제 없다. n 이 엄청 크다고 가정하므로 n 의 영향력이 큰쪽이 나중에 커질수밖에 없다. 절대적인 시간이 아닌 성장성이 가장 중요하다. n제곱이 n 이나 상수 같은 값에 비해 훨씬 더 큰 값이므로 나머지 값은 큰 영향을 주지 않는다고 생각하여 O(n제곱)만 표.. 2021. 3. 29.
좋은 알고리즘이란? / 하나의 문제, 여러 가지 알고리즘 좋은 알고리즘이란? / 하나의 문제, 여러 가지 알고리즘 하나의 문제에는 여러가지 해결 방법(알고리즘)이 존재한다. Ex) 알파벳 순으로 되있는 도서관에서 책 찾는 방법 탐색 선형 탐색 알고리즘 (linear search algorithm) 이진 탐색 알고리즘 (binary search algorithm) [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53] 이라는 배열이 존재할 때 29 값 찾는 방법 선형 탐색 : 처음 값 '2' 부터 '3', '5'... 순서로 값을 확인 이진 탐색 : 중간 값 '19' 와 찾는 값 '29' 의 대소를 비교하면 중간 값이 더 작으므로 중간 값보다 작은 왼쪽 원소들은 모두 제외한 후 [23, 29, 31, 37, .. 2021. 3. 28.
좋은 알고리즘이란? / 알고리즘이란? 좋은 알고리즘이란? / 알고리즘이란? 알고리즘이란? 알고리즘은 어떤 문제를 해결하기 위한 자세한 방법이다. 목적은 같으나 방법이 조금씩 다를 수 있다. 같은 문제를 해결하기 위해서도 다양한 알고리즘이 존재한다. 좋은 알고리즘이란? 1. 문제를 해결하는 것. 2. 문제를 더 잘 해결하는 것. 컴퓨터 알고리즘이란? 컴퓨터가 어떤 문제를 해결하기 위해서 컴퓨터가 이해할 수 있는 방식으로 정리되어 있는 해결 방법이다. 예를 들어 뒤죽박죽 섞여 있는 배열 숫자 원소들을 순서대로 배치하는 문제가 있다면, 우리는 정확하고 효율적으로 숫자들을 정렬하는 알고리즘을 찾아내야 한다. 네비게이션 어플 두 회사에서 각각 네비게이션 어플을 출시했다고 가정해보자. 둘 다 디자인이 훌륭하고, 사용성도 나쁘지 않다. 그러면 어떤 어플.. 2021. 3. 27.
파이썬 응용하기 / 파일 읽고 쓰기 파이썬 응용하기 / 파일 읽고 쓰기 ('test.txt' 파일) test1 test2 test3 with open('test.txt', 'r') as f: print(type(f)) for line in f: print(line) # # #test1 # #test2 # #test3 # 파일 읽기 with open('파일명', 'r') as f : 해당 파일의 읽기를 변수 f 에 저장한다. (r : read, f : 변수이름) '파일명' 은 해당 파일의 경로를 지정해줘야한다. Ex) 'data/test.txt' print(" \t abc def \n\n".strip()) # #abc def strip 위의 파일 읽기의 출력값을 보면 파일의 \n 때문에 라인 공백이 생기는데 strip 을 이용하여 해결할 수.. 2021. 3. 26.
파이썬 응용하기 / 사용자 입력 받기 파이썬 응용하기 / 사용자 입력 받기 name = input("이름을 입력하세요: ") print(name) # #이름을 입력하세요: # - #이름을 입력하세요: Codeit #Codeit input 함수 (사용자의 입력 받기) 항상 입력한 값은 string 자료형으로 리턴된다. integer 연산을 쓰려면 int() 로 형변환을 해줘야한다. input 을 만나면 안에 문자열을 출력해주고 구문이 멈춘다. 값을 사용자가 입력해주면 그 값을 리턴하고 구문이 진행된다. 2021. 3. 25.
파이썬 응용하기 / 파이썬 모듈 맛보기 파이썬 응용하기 / 파이썬 모듈 맛보기 #calculator.py 파일 def add(x, y): return x + y def subtract(x, y): return x - y def multiply(x, y): return x * y def divide(x, y): return x / y #run.py 파일 import calculator as calc print(calc.add(2, 5)) print(calc.multiply(3, 4)) # #7 #12 모듈 같은 폴더 안 다른 파일에 있는 것들을 import 하여 불러올 수 있다. (다른 폴더에 있는 것도 가능하지만 다음에 배움) import calculator 을 하면 calculator.함수() 로 불러오고 import calculator a.. 2021. 3. 24.