일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 독서감상문
- 스쿼드 메이커
- Java & SpringBoot로 시작하는 웹 프로그래밍
- 패스트캠퍼스
- 안드로이드 그림판#그림메모장#낙서장
- 랜덤
- 랜덤스쿼드
- fifaonline4
- 안드로이드 #앱개발#계산기
- 안드로이드#앱만들기#알바
- Ai
- fifaonline
- 바이트디그리
- 강아지 #박스집 #복층
- D-ID
- 자바 인강
- 부르지마세요
- 강아지 스마트 펜스
- 안녕 디지몬
- 내일배움카드
- 안드로이드
- 불끌때
- 피온4
- #FIFAONLINE4
- K디지털크레딧
- 박스#강아지집#만들기
- 홈CCTV
- 부의감각
- 아두이노#작품#사료급식기
- 혼술 술자리 인싸앱
- Today
- Total
LC Studio
알고리즘 분류별 정리 (새롭게 알게 된 지식 정리 노트) 본문
문자열
문자열 분리 / 문자열 자르기 : substring(int index)
ex)
String str = "012345678"
str.substring(5) ->5678 return
str.substring(5, 7) -> 567 return
문자열이 숫자인지 문자인지 판별 : Character.isDigit()
ex) char을 활용 한글자씩 비교,
str = abc -> true
str = 1bc, ab1 -> false
for (int i = 0; i < str.length(); i++) {
if (!Character.isDigit(str.charAt(i))) {
isNumeric = false;
}
}
배열
배열에 특정 값이 들어있는지 확인 : Arrays.asList(array).contains(value)
배열에 특정 값이 Index(위치) 구하기 : Arrays.asList(array).indexOf(value)
ex)
String[] arr = {"a","b","c"};
System.out.println(Arrays.asList(arr).indexOf("c")); //2이 출력
큐 (Queue)
'선입선출' 자료구조 : Queue<Integer> q = new LinkedList<>();
ex)
q.offer(x) -> x 추가 (push)
q.poll() -> 가장 앞에있는 정수 반환 후 삭제 / empty의 경우 null 반환, (pop)
q.remove() -> poll과 비슷한 기능 / 단 empty의 경우 error반환
q. peek() -> 가장 앞에있는 정수 반환 / poll()에서 삭제기능 없는 것
q.,size() -> 요소의 개수
q.isEmpty() -> ture or false
q.contains() -> 현재 찾고자하는 요소가 큐에 들어가있는지
q.clear() -> 요소 전체 삭제
덱 (Queue)
Double-ended Queue : 양방향의 지점이 있는 큐
ex)
q.peekLast(); -> 가장 뒤있는 정수 반환
q.peekFirst(); -> 가장 앞에있는 정수 반환
HashMap
HashMap 선언 : HashMap<String,String> map1 = new HashMap<String,String>();
HashMap 값 추가 : map.put(1,"사과");
HashMap 값 삭제 : remove(1); // 1키값 삭제
value 값 얻기 : map.get(key)
key 값 얻기 : for (String key : map.keySet()) // for문으로 전체 key값 얻기
그래프 알고리즘
합집합 / 두개의 노드가 같은 그래프에 속하는지 : (Union-Find)
○Find : x가 어떤 집합에 포함되어 있는지 찾는 연산(재귀호출 통해 찾음)
○Union : x와 y가 포함되어 있는 집합을 합치는 연산
ex)
// find 구현
public static int find(int x) {
if(x == parent[x])
return x;
else
return parent[x] = find(parent[x]);
}
// union 구현
public static void union(int a, int b) {
a = find(a);
b = find(b);
if(a != b) {
parent[b] = a;
}
}
'Java > Java의 정석' 카테고리의 다른 글
변수 Chapter2(자바의 정석) #1 (0) | 2022.02.22 |
---|---|
자바를 시작하기 전에 Chapter 1 요약 (자바의 정석) #2 (0) | 2022.02.21 |
자바를 시작하기 전에 Chapter 1 요약 (자바의 정석) #1 (0) | 2022.01.02 |