전체 글 126

기술의 활용, 그리고 의식의 흐름

읽어 볼만한 글, http://windy96.egloos.com/m/3495731 " 이들은 6+3+3+4+2(석사까지)=18년 동안 공교육, 사교육 열심히 받아서 배운 능력으로 남이 만든 기술을 어떻게 이용할 수 있는가를 '익히는데' 젊음을 바치고 있다. " 이젠 학교 커리큘럼도 활용 위주로 개편하는 것 같다. 사실 나도 활용 위주로만 공부해온 것이 크다. 흔히 말하는 스펙이라는 한 줄, 공모전 한 줄, 프로젝트 한 줄을 작성하려면 남이 만들어 놓을걸로 눈에 잘 보이는 무언가를 가져와야 심사하는 사람들이 좋아한다. 그래서 나도 그렇게 해왔다. 이렇게 하지 않으면 그 흔한 한 줄짜리 스펙도 못 만드는 시대다. 아 물론 남들과 다르게 만들어 낼 순 있다. 이 블로그를 개설한 이유 중 하나이다. 사실 잘 이..

일상/생각 2019.01.08

눈 오는 날과 변화

첫 눈이 온지도 한 참이 지났다. 이미 겨울이 왔다고 이야기 하기에는 꽤나 많은 시간이 흐른 것이다. 아침에 따뜻한 물에 몸을 녹이기 까지가 하루에서 제일 힘들어지는 그런 계절이다. 예상치 못하게 일찍 끝나버린 알바 때문인지, 게으른 내 탓인지 하루 시간이 매우 길게 느껴지고 하고 싶은 일도, 재밌는 일도 생기지가 않는 것 같다. 오늘 집에 돌아오는 길, 골목길에는 어젯밤에 내린 눈때문에 바닥이 희게 얼어있었다. 이곳 저곳 추위에 얼어 빙판길을 만들어 놓으니, 자연스레 눈 길을 비켜 추운 걸음을 재촉했다. 어릴때는 하얗게 눈이 쌓이면 내 만족감에 마구 밟으며 걸었다. 뽀득 뽀득 설거지라도 하듯이 눈이 내는 소리가 기분이 좋기도, 밟을 때 눌리는 차갑지만 안락함 때문 이기도 했다. 하지만 지금의 나는 추위..

일상/생각 2018.12.16

백트래킹

백트래킹(Back-Tracking)? 트리 탐색 알고리즘의 일종이다. 거슬러 추적한다는 의미를 담고 있다. 이전 노드로 돌아가서 다시 다른 노드들을 탐색한다는 것. 깊이 우선 탐색 [Depth First Search] , 너비 우선 탐색 [Breadth First Search] , 최선 우선 탐색 [Best First Search] 로 나뉜다. DFS의 특징-깊이를 고려하는 문제인지 확인해야한다. 무한한 깊이일 경우 피해야 한다.-스택 오버플로를 조심해야 한다. 재귀 호출을 이용할 시, 너무 많이 시도할 경우 스택 오버 플로가 발생한다.-스택을 이용한 방법 / 재귀 호출을 이용한 방법으로 두가지로 구현이 가능하다. BFS의 특징-최단 거리 구하기 문제에서 사용하기 알맞다. 레벨별로 서치하기 때문이다.-큐..

BFS / DFS

DFS와 BFS는 대표적인 그래프 탐색 알고리즘이다. DFS는 깊이 우선 탐색(Depth-First Search)이라고 불리며, BFS는 너비 우선 탐색(Breadth-First Search)이라고 불린다. 이 두 알고리즘은 그래프에서 노드를 탐색하고 경로를 찾는 데 사용된다. DFS(Depth-First Search)는 그래프에서 깊이 방향으로 탐색하는 알고리즘이다. 시작 노드에서부터 한 방향으로 가능한 한 깊이 탐색을 진행하다가 더 이상 진행할 수 없게 되면, 다시 돌아와서 다른 방향의 노드를 탐색하는 방식이다. 이 알고리즘은 스택, 재귀 호출 등의 방법을 사용하여 구현한다. DFS는 주로 깊이 우선 탐색이 필요한 경우에 사용된다. 예를 들어, 미로 찾기, 트리 탐색, 그래프에서 사이클 찾기 등에서 ..

펜윅 트리

펜윅 트리는 세그먼트 트리에서 조금 더 발전한 형태(?)인 것 같다. 세그먼트 트리에서 우측 노드를 잘라내어 좌측 노드들로만 구성되어 있고 비트 연산으로 부분합을 구할 수 있다. 위의 트리 속 노드를 가지고 계산할때 한 비트씩 차이를 주면 값을 알 수 있기 때문이다. 자세한건 직접 해보면 앎. 어디에 쓰이나?- 부분합을 구할때 쓴다. 왜 쓰이나?- n부터 k까지의 부분합을 구할 시, 하나하나 구하게 되면 시간 복잡도가 O(n)이 된다. 그러나 트리를 이용하게 되면 O(logN) 형태가 된다. 큰 범위값을 구할때 적은 시간동안 해결하기 위함이다.

DB 스키마

데이터베이스 스키마(database schema)는 데이터베이스에서 자료의 구조, 자료의 표현 방법, 자료 간의 관계를 형식 언어로 정의한 구조이다. 데이터베이스 관리 시스템(DBMS)이 주어진 설정에 따라 데이터베이스 스키마를 생성하며, 데이터베이스 사용자가 자료를 저장, 조회, 삭제, 변경할 때 DBMS는 자신이 생성한 데이터베이스 스키마를 참조하여 명령을 수행한다. - 위키 피디아 참조 > 그냥 간단히 DB의 구조를 이야기하는 것 정도라고 이해하면 될 것 같다. 테이블 구조나 필드 속성 등등을 통칭하는 것 같다. SQL을 써보면서도 스키마가 뭔지 이해안하고 했었는데, DB 관련 책을 읽다보니 자주 나오더라. 대충이라도 개념은 짚고 가는게 중요한 것 같다.

컴퓨터 공학 2018.04.10