일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- wil
- 이진 탐색(binary search)
- 정렬 알고리즘(sort algorithm)
- Spring
- 개발자 취업
- ArrayList
- 항해99
- 자바
- GIT
- aop
- cs 공부)준비
- 프로그래머스
- Grafana
- github
- 코딩테스트 준비
- 면접(java
- 메서드
- 코딩
- 배열
- 99클럽
- 코딩문제
- Til
- Entity
- 우선순위 큐(priorityqueue)
- 코딩공부
- Java
- HTML
- 자료구조
- 회고
- css
- Today
- Total
목록2024/06 (30)
hayu's 개발 일지
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/9cQJf/btsHPfoqfhl/6uL29J7QDoEyLF9Yyl5oa0/img.png)
학습 키워드ArrayList vs LinkedList 공부한 내용ArrayList vs LinkedListLinkedList가 각기 노드를 두고 주소 포인터를 링크하는 식으로 자료를 구성한 이유는 ArrayList가 배열을 이용하여 요소를 저장함으로써 발생하는 단점을 극복하기 위해 고안되었기 때문이다.ArrayList LinkedList컬렉션 구성배열을 이용노드를 연결 (linked)데이터 접근 시간모든 데이터 상수 시간 접근위치에 따라 이동시간 발생삽입 / 삭제 시간삽입/삭제 자체는 상수 시간삽입/삭제 자체는 상수 시간삽입 / 삭제 시간삽입/삭제 시 데이터 이동이 필요한 경우 추가시간 발생삽입/삭제 위치에 따라 그 위치까지 이동하는 시간 발생리사이징 필요공간이 부족할경우 새로운 배열에 복사하는 추가 시..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/0nW9X/btsHRb5lFgp/qoeBEJQmnnqO1bGwEmatzk/img.png)
학습 키워드- 면접(JAVA, CS 공부)준비 공부한 내용Call by reference란 무엇이고 보통 어떻게 쓰이나요?→ Call by reference는 참조에 의한 호출을 말합니다. 전달받은 값을 변경할 경우 원본도 같이 변경됩니다. java 에서는 Call by value 로만 동작합니다. 자바에서 매개변수를 넘기는 과정에서 직접적인 참조를 넘기는게 아닌 주소값을 복사해서 넘기는 call by value로 작동합니다. 복사된 주소값으로 참조가 가능하기 때문에 주소값이 가리키는 객체의 내용 변경이 되는 것입니다. JVM의 스택과 힙메모리 영역에 대해 아는 만큼 설명해주실 수 있을까요?→ 스택 메모리는 임시 정보를 저장하는 공간입니다. 각 함수가 호출될 때마다 약간의 공간을 차지하며, 함수가 종료되..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/wapef/btsHPyl15sx/B1ETLa19Lm8m8PgKR3xiK1/img.png)
학습 키워드- 트리(Tree) 공부한 내용Tree트리(Tree)는 계층적인 구조를 나타내는 비선형 자료구조로 그래프(Graph)의 특수한 형태이다.트리는 노드(Node)와 간선(Edge)으로 이루어져 있다.→ 트리는 하나의 루트 노드를 가지고 있으며, 각 노드는 0개 이상의 자식 노드를 가질 수 있다. 이러한 구조로 인해 데이터를 계층적으로 표현할 수 있다.트리의 주요 개념과 용어노드(Node) : 트리의 기본 단위로 데이터를 저장하는 요소이다. 각 노드는 부모 노드와 하위 노드(자식 노드)를 가질 수 있다.루트(Root) : 트리의 맨 위에 있는 노드로 다른 모든 노드는 루트를 향해 이어진 경로를 가진다. 트리는 하나의 루트 노드만을 가진다.루트 노드 : 트리의 시작 노드로 부모가 없는 최상위 노드이다..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/5sij6/btsHLOK1ZOL/ls8lDFkuuP0R1DDrKl52Nk/img.png)
학습 키워드- 면접(JAVA, CS 공부)준비 공부한 내용Java Map의 내부 구현은 어떻게 이루어져 있을지 추측해보실 수 있을까요?→ 자바의 맵은 해시맵, 트리맵 등 여러가지 구현 방식이 있습니다. 그 중 가장 일반적으로 사용되는 방식은 해시맵입니다. 해시 테이블을 기반으로 하며 내부적으로 배열로 구성되어 있습니다. 그리고 각 키의 해시 코드를 계산하여 해당 키를 배열의 인덱스로 매핑됩니다. 충돌을 방지하기 위해 각 배열의 요소는 트리로 구성될 수 있습니다. Garbage Collector의 역할, 원리, 알고리즘에 대해 아는 만큼 설명해주실 수 있을까요?→ 가비지 컬렉터의 역할은 사용되지 않는 객체를 식별하고 메모리에서 제거하여 자원을 확보하는 것입니다. 가비지 컬렉터는 주기적으로 실행되며 실행 중..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/b85dPX/btsHLa7fW6R/HRkGQfeX71vTAKuKRhWQK1/img.png)
학습 키워드- 재귀 함수 공부한 내용재귀 함수재귀 함수는 함수 내부에서 ‘자기 자신을 호출’하는 함수를 의미한다. 이를 통해서 함수가 자신을 반복적으로 호출하면서 원하는 결과를 도출할 수 있다.→ 일정 조건을 만족하는 경우 자신을 호출하는 것을 말한다.! 재귀함수를 사용하는 경우 함수 호출이 계속 쌓이기 때문에 호출 스택이 많아져서 성능이 저하될 수 있다. 따라서 재귀함수를 작성할 때는 무한루프에 빠지지 않도록 종료 조건을 명확하게 설정해야 한다.재귀 함수의 특징자기 자신을 호출하는 방법으로 문제를 해결한다.Base case(기본 경우)와 Recursive case(재귀적인 경우)로 구분된다.Base case(기본 경우) : 재귀 호출을 멈추는 조건을 나타낸다.Recursive case(재귀적인 경우) ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/xwxs3/btsHHmgXasR/hgFnBkPiUeOKkRYMKYFIY1/img.png)
학습 키워드- HashMap 공부한 내용HashMap 사용(메서드) HashMap 선언HashMap을 생성하려면 키 타입과 값 타입을 파라미터로 주고 기본생성자를 호출한다.HashMap은 저장공간보다 값이 추가로 들어오면 List처럼 저장공간을 추가로 늘리는데 List처럼 저장공간을 한 칸씩 늘리지 않고 약 두배로 늘린다.→ 이 때, 과부하가 많이 발생한다.⇒ 초기에 저장할 데이터 개수를 알고 있다면 Map의 초기 용량을 지정해주는 것이 좋다. HashMap map1 = new HashMap();//HashMap생성 HashMap map2 = new HashMap();//new에서 타입 파라미터 생략가능 HashMap map3 = new HashMap(map1);//m..