사랑하애오
블록체인 기술 면접 예상 질문 & 답안 (Q11. ~ Q.20)
BlockChain/기술면접 2023. 2. 5. 16:20

비트코인에서 사용되는 2가지 통신 방법과 차이점은? 비트코인에서는 노드간의 통신과 노드와 사용자의 통신 2가지로 구분된다. 노드간의 통신 Gossip 프로토콜로 TCP를 이용한 통신이다. 노드간의 통신은 신규로 생성된 블록과 트랜잭션을 서로 전파한다. 노드와 사용자간의 통신은 JSON-RPC 기반으로 HTTP를 이용한 통신이다. 사용자가 블록체인 내에 거래를 전달하거나 데이터를 조회하는 경우에는 JSON-RPC를 통해서 진행된다. 비트코인 네트워크 최초 참여 시 네트워크 통신 과정은? Node 설치 후 실행을 하게 되면 , 최초로 연결될 노드 주소를 찾는다. 이는 DNS에 저장된 주소 리스트를 받아 연결을 시도하고, 이에 모두 실패한 경우 하드코딩된 주소 리스트에서 접속을 시도. 첫 번째 노드와 연결이 ..

[프로그래머스 | 자바스크립트] OX 퀴즈

솔루션 const solution = (quiz) => { const answer = quiz.map((v) => { const [formula, answer] = v.split("="); return eval(formula) === +answer ? "O" : "X"; }); console.log(answer); return answer; };

[프로그래머스 | 자바스크립트] 7의 개수

솔루션 const solution = (array) => { const answer = [...array.join("")].filter((v) => v === "7").length; console.log(answer); return answer; }; 솔루션 const solution2 = (array) => { const answer = array.join("").split("7").length - 1; console.log(answer); return answer; };

[프로그래머스 | 자바스크립트] 잘라서 배열로 저장하기

솔루션1 const solution = (my_str, n) => { const answer = []; for (let i = 0; i { const answer = my_str.match(new RegExp(`.{1,${n}}`, "g")); // 정규식 이용 console.log(answer); return answer; }; 정규식은 진짜 볼때마다 새롭고 짜릿하고 내 고사..

[프로그래머스 | 자바스크립트] 문자열 밀기

솔루션1 const solution = (A, B) => { const pushRight = (str) => [str[str.length - 1], ...str.slice(0, str.length - 1)].join(""); for (let i = 0; i { /** * String.prototype.indexOf() : String 객체에서 주어진 값과 일치하는 첫 번째 인덱스를 반환 * * 일치하는 값이 없으면 -1 반환 */ const answer = (B + B).indexOf(A); console.log(answer); return answer; }; 솔루션2가 대박인 거 같다. 아직 난 멀었다...

[프로그래머스 | 자바스크립트] 종이 자르기

솔루션 const solution = (M, N) => { const answer = M * N - 1; console.log(answer); return answer; };

[프로그래머스 | 자바스크립트] 연속된 수의 합

솔루션1 const solution = (num, total) => { const numArray = Array.from({ length: num }, (_, i) => i); const sum = numArray.reduce((x, y) => x + y); const answer = numArray.map((v) => v - (sum - total) / num); console.log(answer); return answer; }; 솔루션2 const solution2 = (num, total) => { let answer = []; let ceilNum = Math.ceil(total / num - Math.floor(num / 2)); console.log(ceilNum); answer = Arra..

[프로그래머스 | 자바스크립트] 다음에 올 숫자

솔루션1 const solution = (common) => { const isTrue = (arr) => arr[2] - arr[1] === arr[1] - arr[0]; // 배열의 2번째 1번째 뺀 값이 1번째 0번째 뺀 값이랑 같니 console.log(isTrue(common)); // true, false const answer = isTrue(common) ? common[common.length - 1] + common[1] - common[0] // true면 등차수열 : common[common.length - 1] * (common[1] / common[0]); // false면 등비수열 console.log(answer); return answer; };