//알고리즘 1. 그래프 탐색 (트리) 2. 인접리스트를 만들고 방문배열을 만듦 3. 탐색시작 -> bfs를 사용하여 구현 -> 매번 탐색하면서 부모노드를 찾으면 방문배열을 매번 새롭게 생성하여야 하기 때문에 시간초과가 남 -> 해당노드의 부모노드를 저장하는 배열을 만들어 bfs를 한번 돌면서 각 노드의 부모노드를 저장 더보기 package baekjoon; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.LinkedList; import java.util.Queue; import java.util.Strin..
1. Block 생성 - nonce : 최초 0에서 시작하여 조건을 만족하는 해쉬값을 찾아낼때까지의 1씩 증가하는 계산 횟수 - data : 데이터 - prevhash : 블록 체인에서 바로 앞에 위치하는 블록의 블록 해쉬 - hash : 해시 함수를 통해 생성된 해시 값 더보기 package day_1223; public class Block { int nonce; String data; String prevhash; String hash; public int getNonce() { return nonce; } public void setNonce(int nonce) { this.nonce = nonce; } public String getData() { return data; } public void..
해시 함수 해시 함수는 임의의 길이의 데이터를 고정된 길이의 데이터로 매핑하는 함수이다. 해시 함수에 의해 얻어지는 값은 해시 값, 해시 코드, 해시 체크섬 또는 간단하게 해시라고 한다. 위키백과 해시 함수 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 이름을 0~15 사이의 정수값으로 매핑하는 해시 함수의 예. “John Smith”와 “Sandra Dee”라는 두 키 사이에 충돌이 존재한다. 해시 함수(hash function)는 임의의 길이 ko.wikipedia.org 해시 함수의 특성과 효과 압축 : 입력 x의 크기와 상관없이 출력길이 y=h(x)는 항상 작아야 한다. 암호학적 해시함수는 입력 길이에 상관 없이 고정된 크기의 출력을 만들어 낸다. 효율성 : 어떤 입력 x에..
