재귀 알고리즘은 이름이 재귀인 알고리즘이 아니라, 재귀의 특성을 지닌 알고리즘이라는 뜻이다. 주어진 문제에 대하여 재귀를 사용한다면 보다 코드를 간결하게 작성하여 문제를 해결할 수 있다. ex 1) sum(n) = n + sum(n-1) : sum(n) 을 구하기 위해 sum(n-1)이라는 sum 함수를 또 불러옴. ex 2) 이진 트리(binary tree), 순열(Factorial), 자연수의 합 등등 하지만 재귀 알고리즘을 사용할 때는 항상 종결 조건(trivial case)을 명시해야 한다. -> 재귀 알고리즘이 사용되는 반복문에서 무한한 반복이 일어날 수 있기 때문 ex 1) sum(n) = n + sum(n-1) 에서 n이 음수까지 진행될 수 있음. ex 2) 피보나치 순열 구현 예제 def ..
1) 정렬(sort)이란 여러 원소로 주어진 데터를 정해진 기준에 따라 늘어놓는 작업을 말한다. Python의 경우 list를 사용하면 굳이 정렬 알고리즘을 구현하지 않아도 된다.(Java도 마찬가지) 파이썬 내장 함수 : sorted() // 이는 새로운 list를 만들어냄 ex. L2=sorted(L1) list 메서드 : .sort() 2) 탐색(search)이란 여러 원소에서 특정한 값을 찾아내는 작업을 말한다. 선형 탐색 (linear search) : 모든 원소에 대해 순차적으로 비교하며 찾는 작업이다. 이는 배열의 길이에 비례하는 소요시간이 걸리며, 시간 복잡도는 O(N)으로 최악의 경우엔 모든 원소를 다 검사해야 한다. 이진 탐색 (binary search) : 정렬되어 있는 배열에 한해서..
파이썬에서 List는 자바의 Array 보다는 더 융통성 있는 자료형이다. 보통 Array는 같은 종류의 데이터를 나열하는데 비해 List는 서로 다른 데이터들을 저장할 수 있다. 예) a = ['Programmers',15,'Apple'] Array는 개념적인 용어( 데이터를 늘어놓은 형태 )이며, List는 파이썬에서 사용하는 데이터형이라고 한다. List는 연산의 종류에 따라 그 속도가 원소의 개수에 비례하거나 무관할 수 있다. 1) 원소 추가 or 마지막 원소 꺼내기 원소 추가 : (List).append() 원소 꺼내기 : (List).pop() 이는 맨 끝 요소를 추가하거나 빼는 것이므로 원소의 개수와 상관없이 실행시간이 일정하다. 2) 원소 삽입 or 원소 삭제 원소 삽입 : (List).i..
JSON이란 JavaScript Object Notation으로 사람이 읽을 수 있는 텍스트 기반의 데이터 교환 표준이다. (데이터를 주고 받기 위한 양식 같은거라고 생각하면 될 것 같다) XML이란 EXtensible Markup Language로 HTML과 비슷한 마크업 언어이다. (태그가 있음) 이는 사람과 컴퓨터가 읽기에 편한 구조이다. HTML : 데이터를 보여주기 위한 목적 XML : 데이터를 저장하고 전달하기 위한 목적 JSON과 XML의 공통점 데이터를 저장하고 전달하기 위해 만들어짐. 기계와 사람이 읽을 수 있는 형태임. 계층적인 데이터 구조를 가지며, 다양한 프로그래밍 언어로 파싱될 수 있음. Request 객체를 이용하여 서버로부터 데이터를 전송받을 수 있음. JSON과 XML의 차이..
# 부동산 정보 모으기 # 실거래가 정보 모으기 import requests from bs4 import BeautifulSoup # bs4라는 모듈 안에 있는 BeautifulSoup를 import -> 함수를 사용할 때 모듈이름.함수이름() 식으로 표기하지 않아도 됨! import pdb # 디버깅 패키지 url = "" pageNo = 1 numOfRows = 1000 LAWD_CD = '11110' DEAL_YMD = '202012' def get_apt_info(): raw_resp = requests.get(url, params = { 'ServiceKey': Service_Key, # 왼쪽 parameter 값은 API문서에서 정해놓은 대로 사용하되(오타 시 "INVALID REQUEST P..
API(Application Programming Interface)란 서비스와 서비스가 소통하는 것을 말한다. 클라이언트와 서버가 데이터를 주고받기 위한 시스템이라고 생각하면 된다. Mocking이란? 실제 API가 실행되기 전에 가짜 결과값을 반환하여 함수의 로직을 테스트하는 방법을 말한다. def get_stock_summary(itemcode): return { 'now' : 100, 'itemcode' : itemcode } # 실제 API를 불러오지는 않았음, 임의의 값을 설정하여 테스트 파이썬에서 API를 사용하는 방법은 request라는 패키지를 사용하는 것이다. 이를 통해 해당 API를 GET하고 데이터를 정렬하고 시각화하는 pandas라는 라이브러리(패키지)를 사용할 수 있다. impo..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.