![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bsKiJP/btrvI4r3gGl/y80kZkuFCz1lSApxJmImQk/img.png)
인덱스(Index) 대용량의 데이터에서 테이블을 FULL SCAN 하지않고 특정 데이터를 빠르게 검색하기 위해 사용하는 자료구조이다. 인덱스는 컬럼과 해당 컬럼의 인덱스 주소를 따로 저장해놓고 사용하여 검색 효율을 높인다. 인덱스는 보통 WHERE 절과 함께 사용해야 효과를 볼 수 있다. 테이블 Full Scan 테이블의 각 행을 순차적으로 읽고, 읽은 열에서 조건의 유효성을 검사한다. 인덱스(Index) 스캔 인덱스는 검색하려는 값을 기준으로 정렬되어있다. 인덱스를 사용하면 검색하려는 값을 찾게 되었을 때 더이상 검색을 진행하지 않는다. Full Scan과 인덱스 스캔의 비교 kakao_con 학생이 수강하고 있는 강의를 (major 흐린눈 plz) 조회한다고 한다고 가정!! Full scan으로 조회..
정확도 40% 뭐가 문제일까.. import java.util.*; class Solution { public static String caculateLength(int number, String leftNow, String rightNow, String hand) { String findNum = Integer.toString(number); String result = ""; Xy numberPosition = new Xy(); Xy leftPosition = new Xy(); Xy rightPosition = new Xy(); int leftMinus = 0; int rightMinus = 0; //(1. 2) (0.0) (2.0) String keyPad[][] = { {"1", "2", "3"}..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/k7t9p/btrsA6yC96X/qcK6MDuqTh4kEqAo73HlzK/img.png)
내 풀이 오늘도 이중for문을 쓴 나 . . 조건문도 덕지덕지 ㅠ 하 다른사람들 풀이를 보면 쉽게쉽게가는데 난 항상 어렵게간다 (반성) 거의 뭐 다른사람 풀이 보고싶어서 문제푸는느낌.. import java.util.*; class Solution { public void insertHashMap(Map map) { map.put("zero", "0"); map.put("one", "1"); map.put("two", "2"); map.put("three", "3"); map.put("four", "4"); map.put("five", "5"); map.put("six", "6"); map.put("seven", "7"); map.put("eight", "8"); map.put("nine", "9"); ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bRRxA1/btrsC9n4FET/P7kpacwla2CKQqVWo9kxz0/img.png)
나의 저세상 문제 풀이 다른 분들은 HashMap도 사용하고 Stream도 멋지게 사용하시는데. . 이중 반복문만 오조오억번 사용해버림.. (반성) import java.util.Set; import java.util.HashSet; import java.util.Iterator; import java.util.ArrayList; import java.util.Arrays; import java.util.List; class Solution { public int[] solution(String[] id_list, String[] report, int k) { // 본인이 신고한 사람 중 정지당한 사람의 수 int result[] = new int[id_list.length]; // 정지된 회원 목록 L..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bEzCzs/btrvFAQTpL2/P4n7171Q7YM9NZuhq0DHRK/img.png)
Iterator와 ListIterator Iterator : Collections에 저장된 요소를 접근하는데 사용하는 인터페이스 ListIterator : Iterator에 양방향 조회기능을 추가한 인터페이스 Iterator 사용 예시 List list = new ArrayList(); list.add("1"); list.add("2"); Iterator iter = list.iterator(); while(iter.hasNext()) { System.out.println(iter.next()); } Collection 인터페이스에는 Iterator형 객체를 리턴하는 iterator 함수가 존재한다. List나 Set인터페이스의 구현체는 각 특성에 맞게 iterator 함수를 구현하였다. Iterator..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/dKGegO/btrsxIq351I/3GLV7yqtVqtzk262ug7kR1/img.jpg)
Collection 배열을 이용하게 되면 고정크기이기 때문에 비효율적으로 사용할 수 밖에 없었다. 유동 크기의 데이터를 효율적으 로 관리하기 위해 Collection 프레임워크를 사용할 수 있다. List 중복을 허용하고 저장 순서가 유지되는 인터페이스다. ArrayList List 인터페이스를 구현하기 때문에 중복을 허용하고 저장 순서가 유지되는 자료구조이다. 배열이 동적으로 늘어 나는 것이 아니고 배열이 꽉 차게 되면 더 큰 새로운 배열을 생성해서 기존의 배열에 저장된 내용을 새로운 배열 로 복사한다. LinkedList LinkedList역시 List 인터페이스를 구현하기 때문에 중복을 허용하고 저장 순서가 유지되는 자료구조이다. 하나의 노드는 다음 노드의 주소를 가지고 있어서 요소들이 연속적으로 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cowkO2/btrsrVyCsiY/EWl04bM4QfEzVnrgQ2tQn0/img.jpg)
프로세스 단위의 관리의 문제점 프로세스 코드를 순서대로 실행하게 되면 원하는 기능의 코드를 찾기까지 (큰 프로그램이라면) 오버헤드가 있을 수 있다. 위의 이미지에서 보는 프로그램은 정말 간단하지만,, 프로세스를 기능단위로 쪼개어 별도로 실행시켜 오버헤드의 단점을 극복하고자 쓰레드(Thread) 라는 개념이 등장했다고 한다. 쓰레드(Thread) 쓰레드는 하나의 프로세스에서 코드를 기능별로 구분한 것이다. 그래서 쓰레드를 경량 프로세스라고도 부른다. 운영체제는 프로세스 단위가 아닌 쓰레드 단위로 스케줄링을 한다. 쓰레드의 장점은 다음과 같다. 자신의 기능만 수행하면 된다. 한 쓰레드가 블록되어도 다른 쓰레드는 실행 가능하다 동일한 프로세스에 포함되는 쓰레드를 각각 다른 CPU에서 실행할 수 있다. 동일한 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/6PNpC/btrswXhs2mw/spsXil5OmKSZMq9Koewj6k/img.jpg)
인터럽트 인터럽트는 CPU가 프로세스를 실행하고 있을 때 이벤트가 발생하여 처리가 필요한 경우 CPU에게 알리는 것을 의미한다. 프로세스 교환을 유발하는 인터럽트와 트랩 CPU에서 실행중인 프로세스가 교체되는 이유는 다음과 같다. Clock(Timer) 인터럽트 : CPU에서 프로세스당 최대 허용 실행 시간이 정해져있는데 해당 시간이 지나가게 되면 프로세스가 교체된다. 실행중이던 프로세스는 다시 준비 큐에 들어가게 된다. I/O 인터럽트 : 실행중인 프로세스가 입출력을 요청하면 프로세스는 블록상태가 된다. 입출력 요청이 끝나면 블록상태에 있던 프로세스는 다시 준비 큐로 들어가 실행될 준비를 한다. 메모리 폴트 (페이지 부재) : 실행중인 프로세스는 주기억장치에 로드되지 않은 주소를 요청할 경우 메모리 폴..
- Total
- Today
- Yesterday
- 람다식
- 네이버클라우드
- 운영체제
- 프로그래머스
- ci/cd
- TCP
- Oracle
- AWS
- ddl-auto
- EC2
- Java
- 트랜잭션격리성
- OS
- spring
- N+1
- Til
- 기술면접
- SpringSecurity
- level0
- SpringGraphQL
- ORA-27125
- CodeDeploy
- 파일업로드설정
- 인덱스
- 트랜잭션
- nginx
- Travis CI
- db
- JPA
- graphql
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |