profile
안녕하세요

Java - 큐(Queue)

Goal 자료구조의 한 종류인 Queue대해서 알아보고 특징을 이해할 수 있다. Java를 이용해서 기본적인 Queue를 구현하고, 변형된 Queue도 구현할 수 있다. Java에 내장된 Queue 라이브러의 메서드를 사용할 수 있다. Queue image.png  큐는 데이터를 일시적으로 쌓아 놓은 자료구조이다. 스택과는 다르게 FIFO(F...

2019년 12월 18일
·
0개의 댓글

docker 명령어 정리

도커를 사용할때, 자주 사용하는 명령어를 정리 하였다. 이미지/컨테이너 전체 삭제 컨테이너 전체 삭제 이미지 전체 삭제 컨테이너 내부 접속 도커를 이용해서 서비스를 구성할때, 디버깅 목적으로 컨테이너 내부에 접속해야할 일이 있다. 도커 컨테이너에 접속하는 명령어는 아래와 같다. Docker 컨테이너 Timezone 변경 도커 컨테이너 환경으로 ...

2019년 12월 18일
·
0개의 댓글

boj - 2178

2019년 12월 17일
·
0개의 댓글

자바 - 예외처리

Error와 Exception Error는 컴퓨터 하드웨어의 오동작 또는 고장으로 인해 응용프로그램에 이상이 생겼거나 JVM 실행에 문제가 생겼을 경우 발생하는것을 말한다. Exception은 사용자의 잘못된 조작 또는 개발자의 잘못된 코딩으로 인해 발생하는 프로그램 오류를 말한다. 프로그램에서 오류가 발생하는 상황은 두 가지이다. 하나는 프로그램 코드...

2019년 12월 17일
·
0개의 댓글

BOJ 2668 - 숫자 고르기

문제 image.png image.png image.png 풀이 image.png 문제의 조건을 만족하는 경우는 2가지가 있다. 먼저, index값과 arr[index]가 같은 경우이다.

2019년 12월 15일
·
0개의 댓글

BOJ 2667 - 단지번호 붙이기

문제 image.png image.png 풀이 일단 문제를 요약하면 아래와 같다. 1은 집이 있는 곳을, 0 은 집이 없는 곳을 나타낸다. 철수는 지도를 가지고 집들의 모임인 단지를 정의하고 단지에 번호를 붙이려 한다. 집이 연결되었다는 것은, 상/하/좌/우에 붙은 집이 있다는 것을 의미한다. 출력의 첫 번째 줄에는 "단지의 수" 출력의 두 번째 ...

2019년 12월 15일
·
0개의 댓글

BOJ - 1260 DFS 와 BFS

문제 image.png image.png 풀이 기본적인 DFS,BFS 구현문제이다. DFS는 재귀호출을 이용하면되고, BFS는 큐를 활용하면 된다. 코드

2019년 12월 14일
·
0개의 댓글

알고리즘 - 완전탐색(2)

다양한 형태의 완전 탐색 > 현실의 상황과 그래프의 탐색 순서를 어떻게 연결할까? 그래프로 변환할 수 없는 상황에 탐색을 적용할 수는 없다. 하지만, 대부분의 상황은 그래프로 변환할 수 있다. 체스 체스를 시작할 때 말의 배치를 정점으로 만든다. 말이 이동할 수 있는 모든 방법을 변으로 만든다. 각 변의 방법으로 ...

2019년 12월 14일
·
0개의 댓글

알고리즘 - 완전 탐색(1)

"TOP코더 알고리즘 트레이닝" 책을 정리하면서 풀이한 내용이다. 완전 탐색 시뮬레이션 문제는 "이런 과정을 거쳐 나온 결과가 무엇인가?" 라고 물어보므로 과정에 따라 코드를 작성하면 된다. 완전 탐색 문제는 과정을 알려주지 않고 "가장 좋은 결과는 무엇인가?" 라고 묻는 유형 선택 사항이 몇 개 있고 어떤 것을 선택해야 할지 모른다면 모든 경우를 테...

2019년 12월 14일
·
0개의 댓글

자바 - 내부 클래스

내부 클래스 정의  내부 클래스(inner class)는 말 그대로 클래스 내부에 선언한 클래스 이다. 내부에 클래스를 선언하는 이유는 대게 이 클래스와 외부 클래스가 밀접한 관련이 있거나, 외부의 다른 클래스와 협력할 일이 없는 경우에 내부 클래스로 선언해서 사용한다.  내부클래스는 선언하는 위치나 예약어에 따라 크게 네가지 유형으로...

2019년 12월 13일
·
0개의 댓글

자바 - equals(), hashCode(), == 연산자 비교 및 정리

객체가 동일한지 확인하는 로직은 프로그램상에서 많이 사용된다. 그렇다면 자바에서는 객체간의 비교를 어떻게 할까? 자바에서는 '==', 'equals()', 'hashCode()'를 이용해서 객체를 비교할 수 있다. '==' 연산자 '=='연산자는 객체,참조 타입일 때 가리키는 주소가 같은지 확인한다. '=='연산자는 두 객체가 같은 것을 가리킬 때만 t...

2019년 12월 13일
·
0개의 댓글

자바 - 입출력과 스트림

프로그램에서 I/O는 가장 기본적인 기능이지만, 외부 저장 장치나 네트워크와 연동해야 하기 때문에 장치에 따라 구현방식이 다르다. 따라서, 자바에서 제공하는 입출력과 스트림에 대해서 정리하였다. 스트림 image.png 스트림이란 프로그램과 I/O객체를 연결하여 데이터를 송수신 하는 길 자바에서 모든 입출력은 스트림을 통해 이루어진다. I/O장비는...

2019년 12월 13일
·
0개의 댓글

자바 - 컬렉션 프레임워크

컬렉션 프레임 워크 image.png 필요한 자료구조를 미리 구현하여 java.util 패키지에서 제공 Collection 인터페이스와 Map 인터페이스 기반으로 이루어져 있다. Collection 인터페이스는 하나의 자료를 모아서 관리하는데 필요한 기능을 제공 Map 인터페이스는 쌍(pair)로 된 자료들을 관리하는데 유용한 기능을 제공 Collec...

2019년 12월 13일
·
0개의 댓글

자바 - 제네릭

제네릭 프로그래밍 (Generic Programming) > 데이터 형식에 의존하지 않고, 하나의 값이 여러 다른 데이터 타입들을 가질 수 있는 기술에 중점을 두어 재사용성을 높일 수 있는 프로그래망 방식 어떤 값이 하나의 참조 자료형이 아닌 여러 참조 자료형을 사용할 수 있도록 프로그래밍 하는 것을 "제네렉(Generic) 프로그래밍" 이라고 한다. ...

2019년 12월 12일
·
0개의 댓글

자바 - Wrapper 클래스

Wrapper Class 프로그램에 따라 기본 타입의 데이터를 객체로 취급해야 하는 경우가 있다. 예를들어, 메소드의 파라미터로 객체 타입이 요구되면, 기본 타입의 데이터를 그대로 사용할 수 없다. Byte, Short, Integer, Long, Float, Double, Character, Boolean Wrapper class는 산술 연산을 위해 ...

2019년 12월 12일
·
0개의 댓글

선형 검색 & 이진 검색

선형 검색 image.png 요소가 직선 모양으로 늘어선 배열에서 원하는 키 값을 갖는 요소를 만날 때까지 맨 앞부터 순서대로 검색 최상의 시간 복잡도 : 원하는 경우를 한 번에 검색 최악의 시간 복잡도 : 원하는 경우를 가장 마지막에 검색 일반적으로 최악의 경우를 시간복잡도로 생각한다. 따라서 선형 검색의 시간 복잡도는 이 된다. 33을 찾기위해...

2019년 12월 11일
·
0개의 댓글

자바스크립트 - 콜백 함수

콜백함수 정의 image.png > 콜백함수는 다른코드(함수 또는 메서드)에게 인자로 넘겨줌으로써 그 제어권도 함께 위임한 함수이다. 콜백 함수를 위임받은 코드는 자체적인 내부 로직에 의해 이 콜백 함수를 적절한 시점에 실행하게 된다. 콜백 함수는 다른 코드의 인자로 넘겨주는 함수 콜백 함수를 넘겨 받은 코드는 이 콜백 함수를 필요에 따라 적절한 시점...

2019년 12월 7일
·
0개의 댓글

운영체제 - 디스크 관리

디스크의 구조 image.png 디스크 외부에서는 디스크를 일정한 크기의 저장 공간들로 이루어진 1차원 배열처럼 취급하게 된다. 일정한 크기의 저장 공간을 논리블록이라고 하며, 디스크에 데이터가 저장될 때에는 논리 블록 단위로 저장되고, 디스크 외부로 입출력이 일언라 때에도 논리 블록 단위로 전송된다. 논리 블록에 저장된 데이터를 접근하기 위해서는 해당...

2019년 12월 6일
·
0개의 댓글

운영체제 - 가상 메모리

가상 메모리 프로그램이 CPU에서 실행되기 위해서는 실행에 당장 필요한 부분이 메모리에 올라와 있어야 한다. 프로그램이 실행되기 위해 그 프로세스의 주소 공간 전체가 메모리에 올라와 있어야 하는 것은 아니다. 당장 수행에 필요한 부분만을 메모리에 올려놓고 그렇지 않은 부분은 디스크의 스왑영역에 내려놓았다가 다시 필요해지면 메모리에 올라가 있는 부분과 교체...

2019년 12월 5일
·
0개의 댓글

자바스크립트 - 비동기(Async) 처리

자바스크립트 비동기 처리 자바스크립트는 먼저 실행된 코드의 작업이 끝나기 전에 더 나중에 실행된 코드의 작업이 끝날 수 있다. 자바스크립트는 싱글 스레드 기반으로 동작하기 때문에, 비동기 작업을 통해 여러가지 task를 동시에 처리한다. 자바스크립트 동시성(Concurrency) Call Stack image.png 자바스크립트 엔진은 메모리 힙과...

2019년 12월 4일
·
0개의 댓글