전체 글 (202) 썸네일형 리스트형 [자바의 정석] ch8. 예외처리 >>프로그램 오류 : 에러는 어쩔 수 없지만 예외는 처리해야 함 에러 : 프로그램 코드에 의해서 수습될 수 없는 심각한 오류 예외 : 프로그램 코드에 의해서 수습될 수 있는 다소 미약한 오류 >>예외 클래스의 계층구조 - Object를 가장 상위계층으로 - Throwable => Exception + Error - RunException 클래스 -> 프로그래머의 실수로 발생하는 예외(예외처리 선택) - Exception 클래스 들 => 사용자의 실수와 같은 외적인 요인에 의해 발생(예외처리 필수) >>예외 처리하기 : 프로그램 실행시 발생가능한 예외에 대비한 코드를 작성하는 것 => 프로그램 비정상 종료를 막음 try-catch문 - 1. 하나의 메서드에 여러개의 try-catch문 사용 가능 - 2. .. [Python] 2169. 로봇조종하기(골2) / DP + 방향에 따른 배열 할당 목차 1. 문제 2. 핵심 아이디어 3. 코드 4. 배운 점 1. 문제 https://www.acmicpc.net/problem/2169 2169번: 로봇 조종하기 첫째 줄에 N, M(1≤N, M≤1,000)이 주어진다. 다음 N개의 줄에는 M개의 수로 배열이 주어진다. 배열의 각 수는 절댓값이 100을 넘지 않는 정수이다. 이 값은 그 지역의 가치를 나타낸다. www.acmicpc.net 2. 핵심 아이디어 특정 칸에 다다르는 경로는 3가지 케이스이다. - 위에서 오기 - 왼쪽에서 오기 - 오른쪽에서 오기 예제 데이터를 기반으로 보자면 24가 적힌 칸에 다다를 수 있는 케이스는 이렇게 요약 가능하다. - 위에서 오기 (25가 적힌 칸으로부터) - 왼쪽에서 오기 (68이 적힌 칸으로부터) - 오른쪽에서 .. [자바의 정석] ch7. 객체지향 프로그래밍 II 1. 상속 1-1. 상속의 정의와 장점 상속 : 기존 클래스를 재사용하여 새로운 클래스를 작성 => 재사용성 : 적은 양의 코드로 새로운 클래스 작성 => 공통규율 : 코드를 공통적으로 관리 사용방법 class Child extends Parent{ // } >>상속 유의사항 - 멤버만 상속된다. - 생성자와 초기화블록은 상속되지 않는다. - 자손 클래스의 멤버 개수는 조상클래스보다 항상 같거나 많다. - 클래스간의 관계에서 형제관계는 없다. 오직 부모-자식의 관계만 존재한다. - 자손 클래스의 객체 => 조상 클래스 멤버 + 자손 클래스 멤버 ex) public class TV{ String color; boolean power; int channel; void power(){power=!power;}.. [Python] 10942.팰린드롬?(골4) / DP 목차 1. 문제 2. 핵심 아이디어 3. 코드 4. 배운 점 1. 문제 https://www.acmicpc.net/problem/10942 10942번: 팰린드롬? 총 M개의 줄에 걸쳐 홍준이의 질문에 대한 명우의 답을 입력으로 주어진 순서에 따라서 출력한다. 팰린드롬인 경우에는 1, 아닌 경우에는 0을 출력한다. www.acmicpc.net 2. 핵심 아이디어 이 문제가 DP 유형에 있다는 것에 많은 고심을 했다. 결국 아이디어를 떠올리지 못했고, 다른 블로그의 아이디어를 참고해 문제를 풀었다. 그러나, 아이디어를 본 순간 DP의 본질적인 부분 즉, 작은 문제의 해결법이나 관계가 큰 문제의 해결법으로 이어진다는 원리가 잘 녹아든 문제라는 생각이 들었다. 기존에 우리가 팰린 드롬을 확인할 때 어떻게 판단.. [Python] 1738. 골목길(골1) / 벨만-포드 알고리즘 목차 1. 문제 2. 핵심 아이디어 3. 코드 4. 배운 점 1. 문제 https://www.acmicpc.net/problem/1738 1738번: 골목길 첫째 줄에 골목길들이 교차하는 지점의 개수 n (2 ≤ n ≤ 100)과 골목길의 개수 m (1 ≤ m ≤ 20,000) 이 차례로 주어진다. 이어지는 m개의 행에 각각의 골목길을 나타내는 세 정수 u, v, w가 차례로 주어 www.acmicpc.net 2. 핵심 아이디어 최근 백준 단기간 성장 문제집을 풀고 있다. 그중 타임머신이란 문제를 풀게 되었는데 이 문제가 벨만-포드 알고리즘과 연관이 있었다. 다익스트라나 플로이드는 익숙해도 가중치가 음수인 그래프를 다루는 벨만-포드는 익숙치 않아 이런 저런 문제를 찾아 풀고 있다 본 풀이는 벨만-포드 알.. 비전공생 SQLD 일주일 합격 후기 feat) 요약자료 및 준비방법 연말이라 올해 활동도 점검할 겸 10월 쯤 합격한 SQLD 후기를 풀어놓고자 한다. 사실 SQLD나 ADSP는 다른 데이터 분석 자격증보다 난이도가 그리 높지 않고, 그렇기에 희소성도 떨어지기 때문에 이 자격증을 취득하는 필요성 자체에 조금 의문이 들었다. 그러나, 내가 SQLD를 따기로 마음먹었던 이유는 이렇게 정리할 수 있다. 1. SQL 문풀을 이미하고 있었기 때문에 공부 input량이 많지 않으리라 생각 2. 자소서 및 면접에서 데이터분석 역량을 어필할 때 포문을 터줄 공인된 무언가가 필요하다고 생각 3. 문풀이 아닌 데이터베이스 설계에 원론적인 공부를 해보고 싶었음 즉, 이 후기는 SQLD 자격증만을 필요로 하는, 자격증 취득 자체에 의의를 두는 사람들에게는 옳지 않다. 그러나, SQLD를 계기.. [자바의 정석] ch5. 배열 >>배열 : 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것 배열의 선언 - 원하는 타입의 변수를 선언하고 대괄호[]를 붙임 - 배열의 선언 : 생성된 배열을 다루기 위한 참조변수를 위한 공간을 만들뿐 => 배열의 생성을 해야 비로소 값을 저장할 공간이 만들어짐 ex) int [] score; //배열의 선언 -> 왼쪽 공간이 만들어짐 score= new int[5] // 5개의 int 값을 저장할 수 있는 배열을 생성 -> 0x100에 5개의 int 공간 만들고 주소값을 score에 저장 >>배열의 index : 배열의 요소마다 붙여진 일련번호 => 인덱스를 벗어난 값을 사용하지 않도록 주의 => 컴파일러가 범위 확인이 불가하므로 전적으로 프로그래머의 책임 # 배열의 길이는 0일 수도 있다. ex).. [Python] 4991. 로봇청소기(골1) / 순열+ BFS 목차 1. 문제 2. 핵심 아이디어 3. 코드 4. 배운 점 마음가짐의 변화 : 그동안 알고리즘 문제를 풀면서 어떻게든 혼자 힘으로 고민해서 푸는 게 좋다고 생각했다. : 그런데, 그러다보니 어떤 한계에 마주할때마다 자연스레 내 힘으로 풀수 있을만한 문제들만 고르는 나의 모습을 보기 시작했다. 골 하위 문제까지는 어떻게든 풀어본다고 해도 그 이상으로 올라가지 못하는 듯 하다. : 그래서 단기간 성장 문제집에서 하나씩 풀이를 리뷰하면서 완전히 내 것으로 만드는 연습을 병행하려 한다. 1. 문제 https://www.acmicpc.net/problem/4991 4991번: 로봇 청소기 각각의 테스트 케이스마다 더러운 칸을 모두 깨끗한 칸으로 바꾸는 이동 횟수의 최솟값을 한 줄에 하나씩 출력한다. 만약, 방문.. 이전 1 ··· 8 9 10 11 12 13 14 ··· 26 다음