일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- start()
- object
- run()
- 추상클래스
- hamobee
- 객체형변환
- class
- eclipse
- garbagecollection
- Eureka
- 콘크리트클래스
- abstractclass
- hashCode
- value
- overload
- concreteclass
- string
- methodArea
- super
- Vector
- 생성자
- fuction
- ALTER
- Polymorphism
- MSA
- arguments
- reference
- override
- Hashtable
- constantnumber
- Today
- Total
뇌운동일지
오늘은 무엇을 풀었나 본문
2019 년 이후 2년만에 재개하는 알고리즘 문제풀이
-> 과거의 나 아주 못하지는 않았는데, 왜 못한다고 생각했는지 모를 일이다.
Java 로 하겠다.
11/29 (월)
1.
배열에서 중복되는 값을 제거하고 가져오겠다.
Set : 중복되지 않는 값을 가지는 collection
배열을 Set 타입으로 변환하여 중복을 제거한다.
HashSet : Set 인터페이스를 구현한 클래스
https://hianna.tistory.com/554
-> 아 어려움
2.
Min Heap
Java 에서 PriorityQueue 사용
poll(), add()
isEmpty(), size() 등의 메소드를 활용함.
-> 이거 한문제 풀었다.
3.
Stack / Queue 문제
Java 나눗셈 올림 : Math.ceil()
-> ceil 로 안되어서 / % 로 계산하고 % 결과가 0이 아니면 +1 했다.
Java에서 배열 크기를 동적으로 사용할 수 없어서 LinkedList 활용
Java Stack
https://coding-factory.tistory.com/601
Java Array, ArrayList, LinkedList
https://wayhome25.github.io/cs/2017/04/17/cs-18-1/
integer linkedlist to int array
https://www.techiedelight.com/convert-list-integer-array-int/
Min/Max Stack 을 활용해서 푸는 문제인 것으로 추측
-> stack 사용하고, max 값 따로 저장해서 풀었다.
오늘 2문제 풀었음.
참고할만한 Java 강의
https://programmers.co.kr/learn/courses/5
11/30 (화)
1.
최대공약수 최소공배수 문제 -> 이것도 못풀겠다.. 심각...
유클리드호제법을 사용해서 풀어야 한다고 한다.
https://imkh.dev/algorithm-gcd-lcm/
2개의 자연수 a, b(a > b)에 대해서 a를 b로 나눈 나머지가 r일 때, a와 b의 최대공약수는 b와 r의 최대공약수와 같다
compareTo 를 사용해서 두 정수 중 더 큰 수를 찾았다.
https://imkh.dev/algorithm-gcd-lcm/
두 수 a와 b의 최소공배수는 a와 b의 곱을 a와 b의 최대공약수를 나눈 것과 같다
최대공약수는 영어로 greatest common factor 라고 함.
나머지가 0 이 될 때까지 while 문을 사용해서 풀었는데, 재귀함수를 사용해서 푸는 방법도 있다고 한다.
2.
소수 찾기 -> 에라토스테네스의 체를 이용해서 풀라고 한다
오늘도 2문제를 풀었다
프로그래머스 level1 문제를 다 푼 다음, 인강을 들어볼 계획
12/1 (수)
1.
정수 제곱근 판별
Math.sqrt() 를 사용해서 풀어볼 것
Math.sqrt(n) : double type return 루트
Math.pow(밑,지수) : 입출력 모두 double 제곱
parseInt() VS intValue()
2.
greedy algorithm
Java String 에서 특정 문자 위치 : charAt() 을 써야겠다.
문자열 길이는 length() 로 체크
알파벳은 26개 [0~25]
Java 에서 문자를 아스키코드로 변환하는 법 : char 를 int 로 캐스트
A가 65, Z가 90
왼쪽, 오른쪽을 못정하겠음.
-> 어려워서 넘어감
3.
정렬
int 배열을 string 으로
https://stackoverflow.com/questions/3619850/converting-an-int-array-to-a-string-array
-> 어려워서 못풀겠음
오늘은 1문제 풀었다.
'알고리즘 문제풀이' 카테고리의 다른 글
매일매일 코딩테스트 공부 (0) | 2021.12.10 |
---|---|
Dynamic Programming, Recursive Function, BFS, DFS : 12/2(목) ~ 12/5(일) (0) | 2021.12.02 |