전체 글

전체 글

    암호화폐는 왜 등장했을까(1): 기존의 금융 시스템

    암호화폐의 등장을 설명하기 위해, 먼저 인류역사상 화폐의 역사와 화폐의 기능에 대해 살펴보겠다. 1) 화폐의 역사 물물교환 화폐가 존재하지 않던 시절, 사람들은 각자 본인이 생산하고 소유한 물품을 필요한 물품과 교환했다. 벼농사를 짓는 농부는 쌀을, 생선을 잡는 어부는 생선을 서로 교환하며 살았다. 그러나 물물교환은 불편한 점이 있었는데, 물건이 지니는 가치가 교환할 때마다 달라지고, 서로의 요구사항이 맞지 않으면 물건을 교환하지 못하는 경우가 발생하기도 했다. 그리하여 화폐가 탄생하게 된다. 실물화폐 물물교환의 불편을 해소하기 위해, 그 시절 귀한 물건을 자신들만의 화폐로 정하게 된다. 이것이 바로 실물화폐이다. 예) 조선시대의 쌀, 노예제도가 있는 나라에서의 노예, 초기 미대륙 통용화폐가 없던 시절에..

    [JS 알고리즘] Toy 18 - getItemFromTwoSortedArrays (kth element of two sorted arrays)

    [JS 알고리즘] Toy 18 - getItemFromTwoSortedArrays (kth element of two sorted arrays)

    해당 문제는 코드스테이츠의 Toy problem을 출처로 합니다. 문제 길이가 m, n이고 오름차순으로 정렬되어 있는 자연수 배열들을 입력받아 전체 요소 중 k번째 요소를 리턴해야 합니다. Advanced 단순히 처음부터 끝까지 찾아보는 방법(O(K)) 대신 다른 방법(O(logK))을 탐구해 보세요. 힌트 - 이진 탐색(binary search)을 응용하여 해결합니다. 입력 인자 1 : arr1 자연수를 요소로 갖는 배열 arr1.length는 m 인자 2 : arr2 자연수를 요소로 갖는 배열 arr2.length는 n 인자 3 : k number 타입의 0 이상의 정수 출력 number 타입을 리턴해야 합니다. 주의사항 두 배열의 길이의 합은 1,000,000 이하입니다. 어떤 배열 arr의 k번째..

    [JS 알고리즘] Toy 22 - rotateMatrix

    [JS 알고리즘] Toy 22 - rotateMatrix

    해당 문제는 코드스테이츠의 Toy problem을 출처로 합니다. 문제 2차원 N x N 배열을 시계 방향으로 90도 회전시킨 배열을 리턴해야 합니다. Advanced 세로와 가로의 길이가 각각 M, N인 2차원 M X N 배열을 시계방향으로 90도씩 K번 회전시킨 배열을 리턴해 보세요. 회전수가 두 번째 입력으로 주어집니다. 입력 인자 1 : matrix 가로 길이(matrix[i].length)와 세로 길이(matrix.length)가 모두 N인 2차원 배열 matrix[i][j]는 number 타입 출력 2차원 배열을 리턴해야 합니다. 문제풀이 N*M (가로N, 세로M으로 가정하여 구현했다) 직사각형 행렬은 회전시 크기가 달라지기 때문에 결과배열의 크기를 미리 지정하여 초기화하는 방법은 비효율적인 ..

    [코드스테이츠 블록체인 부트캠프 4기] 7주차 회고

    주차별 회고는 4F 방식으로 기록하고자 한다. 사실(Fact) : 한 주에 어떤 내용을 학습했고 어떤 학습 방법으로 개념을 이해하고 과제를 해결했는지 작성 감정(Feeling) : 한 주의 코스 과정을 학습하면서 느꼈던 감정을 솔직하게 기록 발견(Finding) : 학습하면서 무엇을 깨달았고, 시도해본 학습 방법에 대해서 개선이 필요한 부분을 발견했다면 발견 항목에 기록 다음주를 위한 행동(Future Action) : 위의 회고 항목을 통해서 당장 다음주에 적용해 볼 학습 방법이나 조금 더 학습이 필요한 내용, 커뮤니케이션 방식 등을 기록 작성일자: 2022/04/15 7주차 학습 내용 [React] 상태 관리 [CLI] 심화 [데이터베이스] 관계형 데이터베이스 [Toy 알고리즘] 8-12 React ..

    Nodejs와 mysql 모듈 연동 에러 해결 | Error: ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client

    환경 이름 버전 Server Node.js v16.14.0 DBMS MySQL Ver 8.0.28-0ubuntu0.20.04.3 for Linux on x86_64 ((Ubuntu)) npm 모듈 mysql 2.18.1 * mysql : Node.js와 MySQL 연동을 위한 모듈 Error 원인 Error: ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client 에러 문구를 간단하게 해석해보면, 클라이언트 프로그램이 인증 프로토콜을 지원하지 않아 발생했다는 것이다. 즉, 클라이언트가 지원할 수 있는 패스워드 플러그인으로 변경시켜주..

    [코드스테이츠 블록체인 부트캠프 4기] 6주차 회고

    주차별 회고는 4F 방식으로 기록하고자 한다. 사실(Fact) : 한 주에 어떤 내용을 학습했고 어떤 학습 방법으로 개념을 이해하고 과제를 해결했는지 작성 감정(Feeling) : 한 주의 코스 과정을 학습하면서 느꼈던 감정을 솔직하게 기록 발견(Finding) : 학습하면서 무엇을 깨달았고, 시도해본 학습 방법에 대해서 개선이 필요한 부분을 발견했다면 발견 항목에 기록 다음주를 위한 행동(Future Action) : 위의 회고 항목을 통해서 당장 다음주에 적용해 볼 학습 방법이나 조금 더 학습이 필요한 내용, 커뮤니케이션 방식 등을 기록 작성일자: 2022/04/08 6주차 학습 내용 [React] 컴포넌트 디자인 [Web Server] 기초 [Toy 알고리즘] 5-7 React 컴포넌트 단위 개발,..