목록
반응형
Java (5)
반응형
7JeY world
이중 연결 리스트를 이용한 덱(Deque) 덱은 양쪽 끝에서 삽입/삭제 연산이 가능해야 하기 때문에 다음과 같이 왼쪽 링크 필드와 오른쪽 링크 필드를 가지는 노드를 사용하는 이중 연결 리스트를 이용하여 구현한다. class DQNode{ char data; DQNode rlink; DQNode llink; } class DQueue{ DQNode front; DQNode rear; public DQueue() { front = null; rear = null; } public boolean isEmpty() { return (front == null); } public void insertFront(char item) { DQNode newNode = new DQNode(); newNode.data = ..
Stack (1) 연결 자료구조 방식을 이용한 스택의 구현 스택의 초기상태(공백스택)는 참조변수 top을 null로 설정하여 표현 연결 자료구조 방식을 이용하여 스택을 구현하면 스택의 원소는 연결리스트의 노드가 된다. 스택에 원소를 삽입할 때 마다 연결 리스트에 노드를 하나씩 할당한다. 스택 원소의 순서는 연결 리스트 노드의 링크를 사용하여 표현하고, 스택의 top은 참조변수 top을 사용한다. 중위 표기 수식을 후위 표기 수식으로 변환하는 연산을 수행하는 프로그램을 구현 interface Stack { boolean isEmpty(); void push(char item); char pop(); void delete(); char peek(); } class StackNode { char data; S..
[boj 12851번] 숨바꼭질2 현재 index까지 올 수 있는 방법이 몇개있는지 담는 cnt[index]배열이 필요하다. check[index] = true 임에도 next위치에 가는 경로가 최단이면 cnt를 늘려주어야 한다. 아직 방문하지 않은 상태 이미 방문 했더라도 이동거리가 같은 경우 dist[next] = dist[now] +1 이라면 queue에 넣어주면 된다. public class Main { static boolean check[] = new boolean[100001]; static int cnt[] = new int[100001]; static int dist[] = new int[100001]; static int N, K; public static void bfs(int N, ..
[boj 1697번] 숨바꼭질 N : 수빈이의 위치 K : 동생의 위치 X+1 or X-1 : 걷기 X*2 : 순간이동 동생을 찾을 수 있는 가장 빠른 시간을 구하는 문제 public class Main { static int N, K; static int check[] = new int[100001]; public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); N = Integer.parseInt(st.nextToken());..
Java Script와 Java 차이점 1) JS는 Java와 달리 넷스케이프 상에서 실행시에 프로그램 코드가 해석된다. Java는 프로그램을 만든 후 반드시 컴파일러로 컴파일 된 결과를 넷스케이프에 삽입하기 때문에 컴파일 시에 코드를 해석하게 된다. 그렇지만 JS는 HTML파일 속에 코드를 직접 삽입, 넷스케이프로 HTML파일을 읽을때 코드를 해석하고 실행 하도록 되어 있다. 한줄씩 해석되는 JS는 속도면에서 미리 컴파일된 Java 프로그램보다 떨어질 수 밖에 없다. 그렇지만 컴파일러를 미리 준비하지 않아도 HTML파일 속에 즉시 프로그램 코드를 삽입할 수 있다는 점은 매우 편리하다. 또한 속도문제는 CPU가 매우 빨라지고 있는 요즘 추세에 비추어 볼때 큰 단점은 아니라고 생각된다. 2) JS는 Jav..