최소스패닝 트리(Minimum Spanning Tree)는 그리디(Greedy) 알고리즘의 대표적인 예이다. 이는 가장 작은 가중치를 가진 간선부터 연결하고 연결중에 사이클이 생기면 무시하면서 모든 노드를 연결해야한다. 예를들어 아래와 같은경우 최소 스패닝 트리를 만들어본다고 해보자 우선 가중치가 제일 작은 간선을 연결한다. 그다음 작은 가중치를 가진 간선 7을 연결한다. 마찬가지로 그다음 작은 가중치를 가진 8을 연결한다. 9는 2개지만 아래쪽의 9를 연결해버리면 삼각형 모양의 사이클이 생기기때문에 위에쪽의 9를 연결한다. 그 다음 10을 연결한다. 마지막으로 12를 연결해준다. 그럼 최종적으로 이런 형태가 그려지면서 최소 스패닝트리가 만들어진다.
컴퓨터의 역사는 1642년 프랑스 파스칼의 덧셈기로부터 시작이 되었다. 거기에 영국의 수학자가 덧셈기를 발전시키고 앨런 튜링의 튜링머신이 개발 되면서 범용성을 가진 컴퓨터로 발전되게 되었다. 이때 '콜로서스'라는 특수 목적용 디지털 전자 컴퓨터를 만들어서 독일군의 암호를 해독해 2차 세계대전에 큰 영향을 미친다. 1944년도 Aiken 교슈에 의해 Mark1 이라는 컴퓨터 다운 컴퓨터가 개발되었다. 이후 펜실베니아 대학 모클리와 에커트에 의해 ENIAC(1943~1946)이라는 세계 최초의 범용 컴퓨터가 만들어졌다. 그러니 이 컴퓨터는 새로운 명령을 내릴때마다 배선을 다시 배치해야하는 불편함이 있엇다. 이후 1945년 폰노이만 구조가 사용된 폰노이만 컴퓨터(내장 프로그램 컴퓨터)가 등장 에드박이라는 컴퓨..
Git-Flow란? git을 사용한 브랜칭 기법이다. 프로젝트를 진행하면서 수많은 브랜치를 생성하고 병합하는데 이러한 수많은 브랜칭 작업을 규격화하여 브랜치를 쉽게 다룰 수 있도록 해 주는 규칙, 전략이라고 할 수 있음 브랜칭 모델은 여러 가지가 있지만 git flow는 gui 툴들에서도 기본적으로 기능으로 제공될 정도로 가장 보편화 되어있는 모델임 git flow에는 기본적으로 feature, develop, release, hotfix, master 5가지 종류의 브랜치가 있습니다. 각각 브랜치는 특정한 목적을 위해 만들어지며, 이는 필요에 따라 생성과 삭제가 될 수 있음 Git Repository 살펴보기 먼저 Repository를 살펴보자면 Repository는 아래의 세가지로 나누어진다. 1. ..
자바스크립트는 매년 새로운 버전을 내고 있는데 자바스크립트를 공부하다 보면 ECMA Script, ES5, ES6 와 같은 용어를 접하게 된다. 종종 보게 되는ES란 ECMA Script의 약자이다. ES5는 ECMA Script 5의 규격을 따른다고 생각하면 된다. ECMA Script란..? 자바스크립트는 1990년대 Netscape 회사의 Brendan Eich 라는 사람에 의해 최초 개발되었다. 자바스크립트가 잘 되자, MS에서 Jscript라는 언어를 개발해 IE에 탑재하였는데, 이 두 스크립트가 너무 제각각이라, 표준이 필요하게 되었다. 표준을 위해 자바스크립트를 ECMA( European Computer Manufacturers Association ) 라는 정보와 통신시스템의 비영리 표준 ..
Node.js®는 Chrome V8 JavaScript 엔진으로 빌드된 JavaScript 런타임입니다. Node.js는 확장성 있는 네트워크 애플리케이션(특히 서버 사이드) 개발에 사용되는 소프트웨어 플랫폼이다. 작성 언어로 자바스크립트를 활용하며 Non-blocking I/O와 단일 스레드 이벤트 루프를 통한 높은 처리 성능을 가지고 있다. 내장 HTTP 서버 라이브러리를 포함하고 있어 웹 서버에서 아파치 등의 별도의 소프트웨어 없이 동작하는 것이 가능하며 이를 통해 웹 서버의 동작에 있어 더 많은 통제를 가능케 한다. 비동기 이벤트 주도 JavaScript 런타임으로써 Node.js 는 확장성 있는 네트워크 애플리케이션을 만들 수 있도록 설계되었습니다. 다음 "hello world" 예제는 다수의 ..
얼마전에 출시한 어플을 업데이트 하는 과정에서 alias비밀번호를 분실하는 상황이 발생했다. 하마터면 앱을 삭제하고 새롭게 다시 출시할뻔했다.. 지금부터 alias비밀번호를 찾는 방법을 설명할텐데 사용하던 keystore파일이 필요하다(.jks로 끝남) 우선 keystore파일이 있는 폴더로 이동한다. shift를 누른채로 keystore가 있는 폴더의 여백을 우클릭한다. 여기에 PowerShell 창 열기를 누른다. https://maxcamillo.github.io/android-keystore-password-recover/index.html Android-keystore-password-recover by MaxCamillo Android Keystore Password Recovery A few..
에이본(이하 "단체"라 함)는 이용자들의 개인정보보호를 매우 중요시하며, 이용자가 리마인드피드백 서비스(이하 "서비스"라 함)를 이용함과 동시에, 온라인상에서 제공한 개인정보가 보호 받을 수 있도록 "정보통신망 이용촉진 및 정보보호"에 관한 법률을 준수하고 있습니다. 단체는 개인정보취급방침을 개정하는 경우 공지사항(또는 개별공지)을 통하여 공지 할 것 입니다. 1. 수집하는 개인정보의 항목 및 수집방법 가. 수집하는 개인정보의 항목 첫째, 단체는 회원가입, 원활한 고객상담, 각종 서비스의 제공을 위해 최초 회원가입 당시 아래와 같은 개인정보를 수집하고 있습니다. - 전자우편주소, 비밀번호 둘째, 서비스 이용과정에서 아래와 같은 정보가 자동으로 생성되어 수집될 수 있습니다. - IP Address, 쿠키,..
이번 예제에 사용할 라이브러리는 아래 주소에서 볼 수 있다. https://github.com/ArthurHub/Android-Image-Cropper ArthurHub/Android-Image-Cropper Image Cropping Library for Android, optimized for Camera / Gallery. - ArthurHub/Android-Image-Cropper github.com 이미지의 크롭을 위해서는 먼저 app경로의 gradle파일에 아래와 같은 코드를 추가해준다. dependencies { ... api 'com.theartofdev.edmodo:android-image-cropper:2.8.+' ... } 또한 파일의 읽고쓰기를위해 안드로이드 Manifests파일에 ..
- Total
- Today
- Yesterday
- 에러해결
- node.js
- socket.io
- RecyclerView
- CHANNELS
- django server
- Tutorial
- github
- flame
- Kotlin
- Hummingbird
- 해결
- DART
- springboot
- Android Studio
- chatting
- 에러
- Git
- 안드로이드
- 안드로이드스튜디오
- Android
- Django
- 코틀린
- password
- 플러터
- redis
- mysql
- flutter
- 알고리즘
- WAS
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |