전체 글
그래프의 탐색(DFS, BFS)
그래프 탐색의 목적 : 임의의 시작점 x에서 시작해서 모든 정점을 한번씩 반복하는 것 1. DFS(깊이우선탐색) - 한 시작점에서 갈 수 있을때 까지 계속진행하다 뒤도돌아오고 다시 갈수있는데 까지 감 - 스택사용해서 갈 수 있는 만큼 최대한 많이가고 - 갈 수 없으면 이전 정점으로 돌아간다. - 재귀호출을 이용해서 구현할 수 있다. // dfs(x) : x에 방문했다는 의미 // 인접 행렬 void dfs(int x){ check[x] = true; printf("%d",x); for(int i=1; i
Django설치 및 설정 & 간단한 게시판 만들기
1. 세팅 - 파이썬 깔린 곳 위치 확인 - 파이썬 깔린 위치 확인 후, 다음과 같이 환경변수 추가 - PyCharm Terminal창에서 파이썬 version & Anaconda내장 파이썬 아닌 찐 파이썬 그 자체로 설정되있는지 확인 - PyCharm Terminal창에서 django 설치 - django 버전 확인 - django 설치 확인 2. Django 프로젝트 생성 - 자신이 원하는 폴더 아래 django_src라는 하위 폴더 생성 - Django 프로젝트 생성 명령어 - django_src폴더 안에 manage.py 파일과 자신이 지정한 이름의 폴더가 생성된 것을 볼 수 있다. - 폴더 안에는 다음과 같은 구성으로 돼있다. - manage.py : 웹사이트 관리를 도와주는 역할을 하는 파일 ..
Cine21_MongoDB저장_검색
0. MongoDB에 크롤링 데이터 저장하기 Database, Collection 생성 db : movie_db, col : actor_col data/actors.json file을 읽어서 처리하기 # warning 감추기 import warnings warnings.filterwarnings(action='ignore') import pymongo import json # 1. connection 생성 conn = pymongo.MongoClient('localhost',27017) print(conn) # 2. database 생성 movie = conn.movie_db print(movie) print(movie.name) # 3. collection 생성 actors = movie_db.acto..
그래프와 BFS
- 정점 : (Node, Vertex) - 간선(Edge) : 정점간의 관계를 나타낸다. - 그래프 : 정점과 간선이 있는것 - 경로 : 간선의 연속(시작점 ~ 도착점 까지 정점을 거쳐 감) - 최단경로 : 그래프의 경로 중 가장 짧은 것 - 사이클 : 경로인데, 시작점과 도착점이 같은 것 - 단순 경로/사이클 : 경로/사이클에서 같은 정점을 두 번 이상 방문하지 않는 경로/사이클 (특별한 말이 없으면, 일반적으로 사용하는 경로와 사이클은 단순 경로/사이클을 말한다.) - 간선은 방향이 있을 수도 있고, 없을 수도 있다. - 방향이 없는 그래프 : 양방향 그래프 (서로 오갈 수 있음) - 방향이 없는 그래프는 저장을 할 수 없기 때문에 각 방향당 하나씩 총 두개 저장해 줘야 한다. - 간선이 여러개일 수..
Python - cine21 데이터 크롤링
1. 씨네 21에 있는 배우 정보를 크롤링 해보자 1. 씨네21 홈페이지에 접속 http://www.cine21.com/rank/person 씨네21 대한민국 최고 영화전문매체 www.cine21.com - 1개월치 데이터를 가져올 예정 (이름, 흥행지수, 순위, 출연자, 직업, 성별, 신장/체중, 취미 등등...) 2. 개발자도구 -> content클릭 -> Request URL에 있는 URL이 진짜 URL임. request로 가져올 때 저 URL사용해야함 3. Post방식으로 전달하기 때문에 전달하는 Form Data값 확인(개발자도구 -> content클릭 -> 아래로 내리면 있음) 4. HTML돔 확인한 후 배우의 이름과 각 페이지 URL들을 가져오자!! site 주소 : http://www.ci..
MongoDB aggregate 연습문제
1. zip.json파일을 불러와 디비에 저장해보자!! - 저장한 데이터를 가지고 aggregate함수를 사용하는 연습을 해보자!!! //zips.json 데이터를 MongoDB 에 저장하세요 use zips_db //state 별 인구수의 합계, _id는 출력하지 않고, 출력되는 documet를 10개로 제한한다. db.zips_col.aggregate( [ { $group: { _id: "$state", totalPop: { $sum: "$pop" } } }, { $project : { _id : 0, totalPop: 1}}, { $limit : 10 } ] ) //1. SQL: SELECT COUNT(*) AS count FROM zip db.zips_col.aggregate([ {$group:{..
[python] 프로그래머스 > level1 > 자연수 뒤집어 배열로 만들기
map(int,값)을 주면 값이 int로 변환되는 것을 알게되었다. 그리고 return에 한번에 주니 확실히 깔끔해 보이는것 같다. map과 list는 파이썬에서 자유자재로 바뀌어서 편리한 것 같다.