| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 개발자운동
- 프로그래머스
- 실리콘키캡
- 라이브커머스
- 개발자건강
- 기업분석
- 백준 1193
- 자바 1193
- 백준 1806 자바
- 온라인쇼핑
- Union Find
- 개발일지
- 백준 줄세우기 자바
- 인사관리사이트
- 백준 2252 자바
- 개발자번아웃
- 알고리즘
- 이커머스
- 줄세우기 위상정렬
- DFS
- 개발자생활
- 개발자
- 백준 최소비용구하기 자바
- 커머스기사
- 기술면접
- 다익스트라 최소비용구하기
- 팀프로젝트
- Spring Security
- 자바 2869
- 유니온 파인드
- Today
- Total
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 개발자운동
- 프로그래머스
- 실리콘키캡
- 라이브커머스
- 개발자건강
- 기업분석
- 백준 1193
- 자바 1193
- 백준 1806 자바
- 온라인쇼핑
- Union Find
- 개발일지
- 백준 줄세우기 자바
- 인사관리사이트
- 백준 2252 자바
- 개발자번아웃
- 알고리즘
- 이커머스
- 줄세우기 위상정렬
- DFS
- 개발자생활
- 개발자
- 백준 최소비용구하기 자바
- 커머스기사
- 기술면접
- 다익스트라 최소비용구하기
- 팀프로젝트
- Spring Security
- 자바 2869
- 유니온 파인드
- Today
- Total
목록전체 글 (69)
JumpUp
자바 기술면접에서 꾸준히 나오는 질문들을 정리해봤다. 1. ==와 equals()의 차이는?==는 두 변수가 같은 객체(같은 메모리 주소)를 참조하는지 비교한다. 기본타입(int, char 등)은 값 자체를 비교하지만, 참조타입(String, 객체 등)은 참조값(주소)을 비교한다.equals()는 Object 클래스에 정의된 메소드로, 기본적으로는 == 와 동일하게 참조값을 비교하지만, String이나 Integer처럼 많은 클래스들이 '값이 같은지'를 비교하도록 오버라이딩해놓았다. 그래서 문자열 내용을 비교할 때는 ==가 아니라 equals()를 써야 한다.String a = new String("hello");String b = new String("hello");System.out.println(a..
개발 일을 하다 보면 하루의 대부분을 컴퓨터 앞에서 보내게 된다.출근해서 컴퓨터를 켜고, 일을 시작한다.한 가지 문제를 해결하다 보면 어느새 몇 시간이 지나 있고한 번 시작한 일을 중간에 멈추는 게 생각보다 어렵다. "이것만 해결하고 쉬어야지."라고 생각했는데, 해결하려고 하다 보니 또 다른 문제가 생기고,"이것까지만 하고..."하다 보면 어느새 몇 시간이 지나 있다.그래서 최근에는 단순히 운동을 시작하는 것뿐만 아니라, 개발하면서 몸에 부담을 줄이는 방법을 하나씩 바꿔보고 있다.현재 내가 바꾼 것은 크게 세 가지다.① 마우스② 키보드③ 운동 습관(애플워치 활용) 1. 마우스를 버티컬 마우스로 바꿨다처음 바꾼 건 마우스였다.개발을 하다 보면 키보드만큼이나 마우스를 많이 사용한다.특히 IDE나 브라우저를 ..
높이 V미터 나무막대를 낮에 A미터 올라가고 밤에 B미터 미끄러지는 달팽이가 몇일만에 나무막대를 모두 올라가는지 구하는 문제이다. 문제풀이 방법 1. 시간제한이 있는 문제이기에 Scanner가 아닌 Buffereader로 입력을 받는다. Scanner를 쓰면 기본 0.1초가 넘는다. 2. 모두 올라가고 난 후에는 미끄러지지 않는다는 조건을 확인하고 규칙을 세운다. 예) A=2, B=1, V=5 1일 낮 : A(2) = 2 1일 밤 : A(2)-B(1) = 1 2일 낮 : A(2)-B(1)+A(2) = 3 2일 밤 : A(2)-B(1)+A(2)-B(1) = 2 3일 낮 : A(2)-B(1)+A(2)-B(1)+A(2) = 4 3일 밤 : A(2)-B(1)+A(2)-B(1)+A(2)-B(1) = 3 4일 낮 ..
해당 배열에 대한 규칙을 찾아야 한다. 대각선으로 봤을 때, 최대값이 1 -> 3 -> 6 -> 10 -> 15 ..이다. 이는,1*2/2 -> 2*3/2 -> 3*4/2 -> 4*5/2 -> 5*6/2이고, 대각선 별로 n*(n+1)/2가 최대값이란 규칙을 발견된다. 그러면, 입력값이 대각선 몇번째에 포함되어있는지 범위를 찾는것이 첫번째이다. int n = sc.nextInt(); int col = 1; int max = 1; while(n>max){ col++; max = col*(col+1)/2; } // n= 14이면, col = 5, max = 15이다. 대각선 짝수번째냐, 홀수번째냐에 따라 최대값보다 작은지 큰지 달라진다. //대각선 짝수번째라면, 최대값에서 입력값 차이 만큼, //행은 작아지..
백준 단계별로 풀어보기 [문자열] 복습하면서, 유용했던 메서드/ 풀이유형 등을 정리하고자 한다. 1. StringBuilder().reverse() < 문자열 거꾸로 하기 string s = new StringBuilder().append(123).reverse().toString(); 2. 문자열 공백제거 공백제거 strip(), stripLeading(), stripTrailing() // java11이상 지원 trim() 유의사항) string s = ""; String[] S = s.strip().split(” “); //빈문자열에 공백이 없기 때문에 s.strip() = ""이며, S[0] = ""이다. 3. int형 각 자릿수 구하기 StringBuilder sb = new StringBuil..
해당 문제는 위상정렬로 푸는 문제입니다. 위상정렬은 그래프 정렬할 때 사용하는 알고리즘으로 그래프가 DAG(Directed Acyclic Graph, 방향성은 있지만 사이클은 없는 그래프)이여야 합니다. 풀이과정 필요한 자료구조는 다음과 같습니다. ArrayList[] 그래프 관계를 표현하는 인접리스트 int[] indegree 노드로 들어오는 간선 갯수를 담는 배열 Queue queue indegree가 0인 된 노드를 담는 큐 StringBuilder result 큐에서 꺼낸 노드를 출력하기 위한 StringBuilder STEP1. list인접리스트에 순서를 저장하고, 노드를 가르키는 간선 수를 indegree배열에 저장합니다. STEP2. queue에 indegree가 0인 노드를 담습니다. ST..
