목록분류 전체보기 (63)
Front-end_dev
123456789101112131415161718192021222324252627282930313233343536373839404142// #1function myFunc() { return new Promise( (resolve, reject) => { console.log('start!'); setTimeout( () => { resolve('timed out'); },5000) }) } myFunc().then(value => { console.log(value) return myFunc();}).then(value => { console.log(value);}) // #2function myFunc(count = 0) { if(count { console.log('start!' + count); ..
Graph maker : www.graphmaker.cf 현재기능 : matrix 저장 및 불러오기degree distribution 보기shortest path 찾기sub graph 찾기png foramt으로 graph 저장
개요 : 컴퓨터공학의 많은 분야중 일부를 뽑아 하나의 네트워크로 도식화한 후에 어떠한 특성이있는지 Social Network Analysis에 근거하여 분석.* 그래프의 각 노드들이 연결맺는 데이터관계는 본인이 임의로 생성함. 1. 데이터를 불러와 무방향그래프로 그렸고, 각 핵심분야는 컬러를 입혔음. 2. maximal clique를 그려봤는데 VR과 AR이 아주 밀접하게 그래픽스와 선형대수를 기반으로하는 기술이라는것이 보여짐. 3. A라는 분야가 B라는 분야와 얼마나 밀접한지를 보여줌. 4. 각 분야가 얼마나많은 직접적인 edge를 갖는지를 보여준다. 그래픽스가 가장많고 그다음은 웹이다. 5. 이 네트워크에서 각분야들을 각각의 커뮤니티로 분류했다. (커뮤니티분류 알고리즘마다 클러스터링하는것에 차이가있다..
PageRank알고리즘에대해 정말 잘 설명해놓은 블로그 : https://sungmooncho.com/2012/08/26/pagerank/ PageRank알고리즘에서 왜 EigenVector가 언급되는지 이제야 알 것 같다.EigenVector Centrality는 네트워크에서 중요한 노드에 연결된 노드가 중요하다는 관점에서 착안된 중심성인데, PageRank 알고리즘은 높은rank값을 갖고있는 웹페이지로부터 특정링크가 노출될때와 똑같은 이야기이다. PageRank 알고리즘의 가장 대표적인 예가 논문인용인데, 논문인용에서는 damping factor를 0.85로잡고(많은연구끝에 0.85로 수렴한듯함), 0.15를 random walk 상수값으로 두었다. R에서의 간단한구현 # V는 논문인용,피인용을 행렬..
순열(재귀), 조합(재귀), 그리고 분할(재귀) 3가지 알고리즘을 합쳐서 구현했다. 처음으로 재귀디자인을 해보았다... 어렵다.편하다. 얻은것 : 특정 상황에서 재귀를 생각해낼수있는 능력이 조금 향상됬다. 결과화면 'abcd'를 2개의조로 나눴을떄의 분할. 소스코드 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119..
압축알고리즘에는 대표적으로 두가지 방법론이 존재한다. 비손실 압축 : 원래의 정보를 그대로 보존해야 하기 때문에 손실압축보다 압축률의 성능에 있어서 불리하다. 원본데이터를 그대로 유지시킬수 있어야 하기때문에 텍스트데이터에 많이 사용된다. 손실 압축 : 일부 사람이 감지할수 없는 고음역대 주파수, 픽셀값에 의도적으로 제거하여 압축률을 크게 높이는 방식이기때문에 사진파일,동영상파일,오디오파일에 많이 사용된다. 이 문서에서는 비손실압축 알고리즘에 초점을 맞추며 Huffman tree with run-length encoding알고리즘기법을 사용하여 압축프로그램을 만든다. 앞으로 Huffman tree with run-length encoding알고리즘을 HTRE라고 하겠음. HTRE의 기반이되는 기술에는 엔트..
arctanh(x)를 power serise와 maclaurin serise로 표현해보고, 급수로 계산해보기. 우선 먼저 arctanh(x)를 power serise와 maclaurin serise로 재표현하기위한 수식을 구성해봤습니다.arctanh(x) 함수는 함수자체가 다항함수가아니라 바로 표현이 안되기때문에 미분이나 적분을해서 다항함수로 바꾸고나서 급수로 표현한뒤,다시 적분 혹은 미분을해서 돌려주는 작업을 하면됩니다 소스코드 결과화면 arctanh(x) 그래프
동적해싱의 구체적인 구현방법에 대해서 설명. 동적해싱은 인덱스를 2진수료표현한다. 따라서 들어오는 키값을 hash함수에 넣고 돌린값을 2진수로 convert해야하며 2진수를 토대로 들어갈 인덱스를 결정하며 실제 인덱스에 mapping할때는 다시10진수로 convert하는 작업이 필요하다.단, 그냥 변환하는것이 아니다. 현재 depth를 기준으로 변환해야한다.예를들어, 11이라는 값이 들어왔을때, 11은 2진수로 1011로 표현되며 현재 depth가 2라고 가정했을경우에 가장끝자리서부터 2개만 파싱해야한다.따라서 11로 변환되야하며, depth가 4라면 1011로 변환된다. Operation : transformToBinary(decimal) ::= 10진수를 2진수로 변환한다extract(binary) ..
위너트리 같은경우는 몇없는 external sorting중 한개이다.external sorting은 모든데이터를 전부 메모리에올려서 정렬하는 방식이아닌, 한개 혹은 일부만 올려서 정렬하고 다시 몇개만올려서 정렬하는(반복...) 방식이다. 위너트리의 동작방식은 각각의 run에서 1개씩 올려서 서로 경쟁을펼쳐(누가더 작나 혹은 누가더크나) 1인자가 나올떄까지 경쟁을하며 1인자가나올때마다 정렬이 되는방식이다. 물론 각각의 run들은 사전에 정렬이되어있어야한다. * 오름차순정렬을 min-winner tree라고하고 , 내림차순정렬을 max-winner tree라고함. 경쟁을할떄 중복된데이터가 있을경우에??먼저, 한개의 데이터가 뽑히고나서, 다음경쟁에서 중복된데이터가 뽑힐것이다. 그렇다면 한개의 데이터가뽑혔을때,..