📚 오늘 공부한 내용
LinkedList
오늘은 Java에서 LinkedList 자료구조에 대해 깊이 있게 학습했다. LinkedList의 특성과 ArrayList와의 차이점, 그리고 언제 사용하는 것이 효율적인지에 대해 이해할 수 있었다.
- LinkedList는 맨앞, 맨뒤 삽입/삭제는 O(1)로 빠르지만, 중간은 O(N)이고 조회는 O(N)이다
- ArrayList는 조회가 O(1) (byte연산으로 바로 접근)이지만 삽입/삭제는 O(N)이다 (자리를 미뤄야 하므로)
재귀함수 (Recursion)
알고리즘 문제 해결을 위해 재귀함수의 개념과 구조를 공부했다. 재귀함수의 핵심인 기저 조건(base case)과 재귀 호출의 관계를 파악하는 것이 중요하다는 걸 깨달았다.
- 탈출 조건을 잘 설정하는 것이 중요하다
- 자기 자신을 계속 호출한다
💡 실습 성과
재귀함수 관련 알고리즘 문제를 실제로 해결해보면서 이론을 실전에 적용할 수 있었다. 문제를 작은 단위로 분해하여 해결하는 재귀적 사고를 기를 수 있었던 뜻깊은 시간이었다.
🎯 느낀 점
자료구조와 알고리즘은 단순히 암기가 아닌 이해가 중요하다는 것을 다시 한번 느꼈다. 특히 재귀함수는 처음엔 어려웠지만, 반복 학습을 통해 점점 익숙해지고 있다.
'🧑💻Sparta' 카테고리의 다른 글
| TIL - Stack (09.21) (0) | 2025.09.23 |
|---|---|
| TIL - Map (09.20) (0) | 2025.09.23 |
| TIL - HashSet (09.19) (0) | 2025.09.23 |
| TIL - Java Hash (09.18) (0) | 2025.09.23 |
| TIL - Java List (25.09.17) (0) | 2025.09.17 |