99클럽 코테 스터디 5일차 TIL + 20240727

Yellta·2024년 7월 26일
0

TIL

목록 보기
39/95

1. Java HashMap의 메소드들

설명

put(key, value)

get(key)

키에 해당하는 value 리턴

containsKey(key)

key가 있는지 check

contains.Value(value)

value가 있는지 check

remove(key)

key에 해당하는 값 삭제

size()

맵 크기 반환

isEmpty()

비어있는지 체크한다.

keySet()

모든 키를 갖는 Set반환

Set<String> set = Map.values();

values()

모든 값 또는 Collection 반환

Collection<?> c = map.values();

entrySet()

키 값 매칭 포함해서 Set<Map<K, V>>반환한다.

for(Map.Entry<K,V> ent : map.entrySet()){
	K key = entry.getKey();
	V value = entry.getValue();
}

2. Java Arrays.sort()와 Collections.sort의 차이

설명

Arrays.sort()

평균 시간 복잡도 ->O(NlogN)
최악은 O(N^2)

따라서 시간초과가 날 가능성이 있다.

Collections.sort()

O(N)~ O(NlogN)의 시간 복잡도
Collections.sort는 primitive타입(기본타입)이 아닌 List계열의 자료구조를 사용해야한다.

출처/참고

Arrays.sort()와 Collections.sort()에 대해서 자세히 알아보자!

3. 오늘의 코테?... 문제?...

문제 베스트 앨범
![[Pasted image 20240726232926.png]]
문제를 풀기위해 큰 틀을 짯던 흔적들...
참고로 이때는 그냥 자료구조, 알고리즘 생각 안하고 말 그대로 풀려고 한다. 중/고등학교때 시험보듯이 말이다.
![[Pasted image 20240726233359.png]]
앞서 작성한 큰 틀의 과정을 코드로 옮기는 부분

큰 틀을 짜고 세부적인 부분은 머릿통이 알아서 짜줬던걸 컴퓨터가 알아듣게 할 수 있도록 설정해야한다. 아아 나처럼 눈치껏 정렬하고 해주면 정말 좋을텐데 개발 언어란게 그런게 안돼서 하나하나 영유아한테 한글 가르치듯이 알려줘야한다. 그리고 그게 까다로워서 짜증남.

아무튼 최근 코딩테스트 문제를 풀면서 자료구조, 문자열 다루기 관련 문제가 나오고 있는데 안타깝게도 나한테는 쥐약이다 ㅋ. 메소드 사용법을 모르기때문 ㅋ 나는 c++로 문제를 풀기 떄문...

그리고 정렬이 진짜 개짜증난다. 한 줄이면 되는 코드를 3~6줄 써야해서 귀찮고 Override도 귀찮다. 그리고 그걸 통으로 외워야 하는 것도 귀찮다ㅏㅏㅏㅏ 그리고 지저분하고 긴 코드들도!!! 개발은 괜찮은데 코테할 때 자바는 너무 싫단말이지

아무튼 코테 정렬알고리즘을 모아서 풀어보려고한다. java로 이리저리 내가 원하는 대로 정렬하는 법은 아직 숙지하지 못했기 때문...


#99클럽 #코딩테스트준비 #개발자취업 #항해99 #TIL

profile
Yellta가 BE개발해요! 왜왜왜왜왜왜왜왜왜왜왜왜왜왜왜왜왜왜왜 가 제일 중요하죠

0개의 댓글