[백준11047 - Java] 구현 - 주사위 굴리기
·
문제 풀이/백준 문제풀이
주사위 굴리기 문제 풀이 문제 파악 필요한 기능 이동 이동시에는 지도 밖으로 나가는지 확인해야 하는 조건 필요 이동 시 주사위 배열의 위치를 변경시켜줘야 함 바닥면 복사 바닥이 0 일 경우 주사위의 바닥면을 바닥에 복사 바닥이 0 이 아닐경우 바닥의 수를 주사위 바닥면에 복사 후 바닥의 값은 0으로 변경 변수 생성 지도 생성에 필요한 변수 현재 위치 변수 주사위 오더 횟수 변수 동서남북 이동시 필요한 x,y 이동 배열 변수 주사위 배열 변수 public static int n,m,x,y,k; public static int[][] map; //동,서,북,남 public static int[] dx = {0,0,-1,1}; public static int[] dy = {1, -1, 0, 0}; //윗,바,..
[Design Pattern / Java] Template Method패턴
·
JAVA-기초/Design Pattern
[Design Pattern] - Template Method패턴 🟰 Templete Method란? ✅상위 클래스 쪽에 템플릿이 될 메서드가 정의되어 있고, 그 메서드 정의에 추상 메서드가 사용된다. ✅따라서 상위 클래스만 봐서는 최종적으로 어떻게 처리될 지 모른다. ✅상위 클래스로 알 수 있는 것은 추상 메서드를 호출하는 방법뿐 ✅하위 클래스에서 상위 클래스의 추상 메서드를 구현하며 각 하위 클래스에서 다르게 구현하면 처리도 다르게 이루어진다. ✅하지만 처리의 큰 흐름은 상위 클래스에서 구성한대로 된다. 🟰예제 프로그램 📌문자나 문자열을 5번 반복하여 표시하는 프로그램 📌등장하는 클래스 ✅ AbstractDisplay클래스 구현된 메서드는 display메서드 display안에는 open , print..
[CS면접 및 자바 면접 준비] DB 데이터 베이스 면접 정리 - DB의 기
·
면접 준비
DB의 기본 용어정리 DB(DataBase) 통합하여 관리되는 데이터의 집합체 DBMS(DataBase Management System) DB를 관리하고 운영하는 소프트웨어 계층형, 망형, 관계형 DBMS 중 대부분의 DBMS가 테이블로 구성된 관계형 DBMS(RDBMS) 여러 명의 사용자나 응용 프로그램과 공유하고 동시에 접근이 가능해야함 SQL(Structured Query Language) 구조화된 질의 언어라는 뜻 표준 SQL을 배우면 대부분의 DBMS사용 가능 DBMS의 종류 계층형(현재 사용x) 구성 후 변경하기가 매우 까다로움 망형(현재 사용x) 모든 구조를 파악해야 프로그램 작성 가능 관계형 DBMS 테이블안에 행과 열로 이루어져 있음 ✨DB의 특징 독립성 DB는 데이터를 사용하는 응용 프..
[CS면접 및 자바 면접 준비] Generic 및 쓰레드 면접 질문 정리
·
면접 준비
Generic Java의 Generics 개념을 설명해주세요 ➕ 제네릭스를 사용하면 클래스, 인터페이스, 메서드를 정의할 때 타입(클래스 및 인터페이스)을 매개변수로 사용할 수 있다. 제네릭스의 주요 이점은 컴파일 시간에 오류를 감지할 수 있어 코드를 더 안전하고 명확하게 만들 수 있고. 메소드 인자, 반환 타입 및 또는 필드의 타입 간 종속성을 표현하기 위해 타입(클래스 및 인터페이스) 매개변수를 사용할 수 있다. Generic을 사용해야 하는 이유는 무엇인가요? ➕ 제네릭 타입을 사용함으로써 잘못된 타입이 사용될 수 있는 문제를 컴파일 과정에서 제거할 수 있다. 실행 시 타입 에러가 나는것보다는 컴파일 시에 에러를 사전에 방지하는 것이 좋다. 또 제네릭 코드를 사용하면 요소를 찾아올 때 타입변환을 할..
[CS면접 및 자바 면접 준비] Network
·
면접 준비
OSI 7 LAYERS란? ➕ 네트워크 통신이 일어나는 과정을 7단계로 나눈것 ISO(국제표준화기구, International Organization for Standardization)에서 네트워크 간의 호환을 위해 표준 네트워크 모델을 만듬 작동 원리 OSI 7계층은 응용, 표현, 세션, 전송, 네트워크, 데이터링크, 물리계층으로 나뉨 전송 시 7 계층에서 1계층으로 각각의 층마다 인식할 수 있는 헤더를 붙임(캡슐화) 수신 시 1계층에서 7계층으로 헤더를 떼어냄(디캡슐화) 출발지에서 데이터가 전송될 때 헤더가 추가되는데 2계층에서만 오류제어를 위해 꼬리부분에 추가됨 물리계층에서 1,0의 신호가 되어 전송매체(동축케이블, 광섬유 등)을 통해 전송 [1계층] 물리 계층(Physical Layer) ➕ 최..
[백준11047 - Java] 동전 0 Greedy 알고리즘으로 풀
·
문제 풀이/백준 문제풀이
Greedy알고리즘 이란? 🎯최적의 값을 구해야 하는 상황에서 사용된다. 🎯각 단계에서 최적이라고 생각되는 방법으로 값을 반환해 나가는 방식이다. 🎯주로 문제를 분할 가능한 문제들로 분할한 뒤, 각 문제들에 대한 최적의 답을 구한 뒤 이를 결합하여 전체 문제의 최적의 값을 구하는 경우 사용한다. 쉽게 말해서 규칙을 파악하고 그 규칙을 메서드화 한 후 반복수행하여 값을 구하는 방식이라고 할 수 있다. 위 문제에서 규칙을 파악하기 위해 예시를 봐보자. 예상해볼 수있는 규칙 1. 4200원보다 큰 숫자는 무시해도 된다. 2. i>=2인 경우에는 A의i번째는 Ai-1의 배수라고 하였다. 각 숫자들은 배수관계라는 것을 알 수있다. 예를 들어 10(A의 3번째)은 5(A의 2번째)의 배수이다. 우리는 최소한의 연산..