일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 프로그래머스
- 마곡속눈썹펌
- Java
- 수학
- 직무면접
- OS
- ai/bigdata
- 정렬
- 백준
- 코딩테스트
- 투포인터
- 시뮬레이션
- 등촌동속눈썹펌
- 삼성
- 카카오
- level2
- 마곡속눈썹연장
- 운영체제
- BOJ
- 추석트래픽
- 등촌동속눈썹연장
- 리트코드
- leetcode
- 1차면접
- 삼성SW역량테스트
- 딥러닝
- 삼성 SW역량테스트 기출
- 포스코
- 다시보기
- 알고리즘
- Today
- Total
목록알고리즘/Java (10)
기록하는 습관을 들이자
* 해당 내용은 CS(Computer Science) 스터디를 진행하며 공부한 내용을 정리한 글입니다. 1. JUnit이란? 자바용 단위테스트(Unit Test) 도구 입니다. 2. 단위테스트(Unit Test)란? 소스코드의 특정 모듈이 의도된 대로 정확히 작동하는지 검증하는 절차입니다. 모든 함수와 메소드에 대한 테스트 케이스(Test case)를 작성하는 절차를 말합니다. 더보기 참고> 단위 테스트(Unit Test) vs 통합 테스트(Integration Test) 단위 테스트는 프로그램 내의 하나의 기능을 단위로 테스트를 수행하는 것을 의미합니다. 일반적으로 하나의 메소드, 함수를 대상으로 합니다. 통합테스트는 모듈을 통합하는 과정에서 모듈 간 호환성의 문제를 찾아내기 위해 수행되는 테스트입니다..
* 해당 내용은 CS(Computer Science) 스터디를 하며 공부한 내용을 작성한 글입니다. Java와 C의 차이점? "Java에서는 개발자가 프로그램 코드로 메모리를 명시적으로 해제하지 않기 때문에 가비지 컬렉터(Garbage Collector)가 더 이상 필요 없는 (쓰레기) 객체를 찾아 지우는 작업을 한다." Garbage Collector란? 동적으로 할당한 메모리 영역 중 더 이상 사용하지 않는 영역을 탐지하여 해제하는 역할을 한다. 여기서 "더 이상 사용하지 않는 영역"은 **더 이상 참조되지 않는 객체(Unreachable Object)**를 의미한다. 더 이상 참조되지 않는 객체(Unreachable Object)의 의미 Java에서 이야기하는 Unreachable Object를 아..
* CS(Computer Science) 스터디를 진행하며 공부하게 된 내용을 정리한 내용입니다. JVM이란? JVM이란 Java Virtual Machine의 약자로, 자바 가상 머신을 뜻하는 용어이다. JVM의 역할은 자바 프로그램을 클래스 로더를 통해 읽어들여 자바 API와 함께 실행하는 것이다. 일반적인 윈도우 프로그램과 Java 프로그램의 차이 Java가 OS에 상관없이 동작할 수 있도록 중계자 역할을 한다. GC(Garbage Collection)등의 기능을 제공한다. 자바 프로그램 실행 과정 프로그램이 실행되면 JVM은 OS로부터 이 프로그램이 필요로 하는 메모리 영역을 할당받는다. JVM은 이 메모리를 용도에 따라 여러 영역으로 나누어 관리한다. 자바 컴파일러(javac)가 자바 소스코드(..
하반기 채용 공고가 점차 뜨기 시작하면서 코딩테스트를 준비하고 있는 분들이 늘고 있는 것 같아 글을 쓰게 되었습니다. 물론 저도 많이 부족하지만, 상반기 코딩테스트 준비하면서 참 힘들었고, 취준생분들 불안한 마음을 누구보다 잘 알기에,,,, 조금이나마 도움이 될 수 있지 않을까 해서 포스팅 하게 되었습니다. (고수분들 스루해주세요!!....) 일단 코딩테스트에서 자주 출제되는 유형을 정리해보면, 브루트 포스 DFS BFS 시뮬레이션/구현 DP 그리디 이분탐색 투포인터 이정도이다. 그 중에서 가장 많이 출제되는 유형을 꼽아보면, 브루트 포스 DFS BFS 시뮬레이션/구현 DP 그리디 이분탐색 투포인터 해당 유형이다. 그렇기 때문에, 해당 4가지 유형만 깊게 파고 공부하면, 웬만한 코딩테스트 합격선에는 들 ..
참고 https://m.blog.naver.com/kks227/220795165570 투 포인터(Two Pointers Algorithm), 슬라이딩 윈도우(Sliding Window) (수정: 2019-09-09) 조금 성향이 비슷하다고 생각하는 기법 2개를 함께 쓰려 합니다.첫 번째로 소개해드릴 기법은 투 포인터(tw... blog.naver.com 투 포인터 알고리즘에 대해 알아보겠습니다. 가끔 브루트 포스로 문제를 풀다보면 N이 큰 경우에는 시간초과가 발생하게 되는데, 그 때 완전 탐색이 아닌 다른 방법으로 어떻게 풀까하다가 알게 된 알고리즘입니다. ★ 완전 탐색 시 시간 초과가 나는 경우 ★ 1. 투 포인터 알고리즘 시도해보기 2. 이분 탐색 시도해보기(binary search) 3. dp(Dy..
참고 2018 카카오 블라인드 코딩테스트_추석 트래픽 카카오 추석 트래픽 문제에서 double형 변수끼리 덧셈, 뺄셈 연산을 하는데 부동 소수점 때문에 연산에 오차가 생겨 자꾸 에러가 났다. 이러한 경우에는 오차 없는 연산을 위해 BigDecimal 연산을 사용한다. 해당 클래스를 정리해보자. BigDecimal 클래스 라이브러리 import java.math.BigDecimal; 선언 방법 BigDecimal bd = new BigDecimal("4.17"); BigDecimal bd1 = BigDecimal.valueOf(0.4); //BigDecimal 선언 시에는 무조건 String으로 선언해야함! 연산 방법 BigDecimal 연산 시에는 산술 연산자가 아닌 add(더하기), subtract(빼..
이번에는 구현 시 많이 쓰이게 되는 Map 클래스에 대해 정리해보고자 한다. Map은 기본적으로 쌍으로 매핑해 주는 것으로써 key는 중복될 수 없고, value는 중복 가능하다는 특징을 가지고 있다. 자바의 Map 인터페이스와 클래스 구조는 다음과 같다. 1. HashMap 클래스의 기본 메소드 HashMap 메소드 설명 .put(key, value) (key, value) 쌍의 새로운 데이터 추가 .get(key) key값에 해당하는 value값 반환 .remove(key) key값에 해당하는 데이터 삭제 .keySet() key값들 집합 반환 .values() value값들 집합 반환 .size() map 사이즈 반환 .isEmpty() 비어있는지 여부 반환(boolean) ★ 중요 메소드 - .g..
---- 업데이트 중! 자주 까먹는 메소드 ArrayList, LinkedList의 .indexOf(Integer, String형 등) - 해당 element의 index 반환, 없으면 -1 ArrayList, LinkedList의 .addAll(List 형) - 해당 리스트에 parameter로 주어지는 리스트의 요소를 모두 추가 StringBuilder의 .setCharAt(index, char형) - 해당 index에 문자를 해당 요소로 바꿈 TreeMap의 .ceilingKey(int 형 등 숫자) - 인자 값으로 넘어온 숫자보다 큰 key 값들 중에 가장 작은 key 값 반환 Math 클래스의 .round(double 형 숫자) - 인자 값으로 넘어온 실수를 소수점 아래 첫째자리에서 반올림 문자..