| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- appcompatactivity
- 프로세스
- appcompatacitivity
- apk 빌드 과정
- Kotlin
- 리사이클러뷰풀
- AAC
- NestedScrollView
- 내부 단편화
- 물리 메모리
- viewModelScope
- DiffUtil
- GetX
- 운영체제
- 플로이드워셜
- 리사이클러뷰
- 뷰홀더
- 디자인 패턴
- 데코레이터 패턴
- recyclerview
- 안드로이드
- flutter
- Dispatchers
- Android
- http발전과정
- AsyncListDiffer
- 자이고트
- 절대 주소
- http 역사
- 상태관리
- Today
- Total
목록분류 전체보기 (77)
hong's android
Strong reference 일반적으로 New로 생성된 객체를 참조하는 것. Gc가 발생해도 강한 참조가 된 객체는 회수되지 않는다. Weak reference Weak reference object에 의해서 참조하는 것 Weak reference 객체 자체는 강한 참조이고 Weak reference 객체 내부에서 참조를 유지한다. Weak reference 객체에 의해 참조되는 객체가 weakly reachable 상태이다. Gc가 발생하면 무조건 Weak reachable 한 객체들을 회수한다. 약한 참조가 사라지는 시점이 GC의 실행 주기와 일치하고, 이를 이용해 짧은 주기에 자주 사용되는 객체를 캐시 할 때 유용하다. 언제 사용할 수 있을까? class BitmapWorkerTask extend..
Serializable(직렬화)란? 서로 다른 메모리 공간을 가지고 있는 시스템은 같은 객체를 참조할 수 없다. 그렇기 때문에 객체 내용을 직렬화된 바이트 코드로 변환해서 객체 값을 주고받을 수 있게 한다. Serializable(직렬화) 하는 이유 객체의 영속성을 위해서, jvm 상에 있는 객체 정보는 프로그램이 종료되면 사라진다. 네트워크로 객체의 값을 보내야 한다. 자바는 Serializable 인터페이스를 구현해야 직렬화가 가능한데, 이 Serializable 인터페이스는 기능들이 들어있지 않은 마크 인터페이스다. Serializable과 Parcelable Serializable은 Java.io 패키지에 속한 인터페이스, parcelable은 안드로이드 sdk에 포함된 인터페이스이다. Seria..
문제 설명 단체사진 찍기 가을을 맞아 카카오프렌즈는 단체로 소풍을 떠났다. 즐거운 시간을 보내고 마지막에 단체사진을 찍기 위해 카메라 앞에 일렬로 나란히 섰다. 그런데 각자가 원하는 배치가 모두 달라 어떤 순서로 설지 정하는데 시간이 오래 걸렸다. 네오는 프로도와 나란히 서기를 원했고, 튜브가 뿜은 불을 맞은 적이 있던 라이언은 튜브에게서 적어도 세 칸 이상 떨어져서 서기를 원했다. 사진을 찍고 나서 돌아오는 길에, 무지는 모두가 원하는 조건을 만족하면서도 다르게 서는 방법이 있지 않았을까 생각해보게 되었다. 각 프렌즈가 원하는 조건을 입력으로 받았을 때 모든 조건을 만족할 수 있도록 서는 경우의 수를 계산하는 프로그램을 작성해보자. 입력 형식 입력은 조건의 개수를 나타내는 정수 n과 n개의 원소로 구성..
문제 설명 그렙시에는 0으로 된 도로에 숫자 블록을 설치하기로 하였습니다. 숫자 블록의 규칙은 다음과 같습니다. 블록의 번호가 n 일 때, 가장 처음 블록은 n * 2번째 위치에 설치합니다. 그다음은 n * 3, 그다음은 n * 4, ...로 진행합니다.만약 기존에 블록이 깔려있는 자리라면 그 블록을빼고 새로운 블록으로 집어넣습니다. 예를 들어 1번 블록은 2,3,4,5, ... 인 위치에 우선 설치합니다. 그다음 2번 블록은 4,6,8,10, ... 인 위치에 설치하고, 3번 블록은 6,9,12... 인 위치에 설치합니다. 이렇게 3번 블록까지 설치하고 나면 첫 10개의 블록은 0, 1, 1, 2, 1, 3, 1, 2, 3, 2이됩니다. 그렙시는 길이가 1,000,000,000인 도로에 1번 블록부터 ..
문제 설명 땅따먹기 게임을 하려고 합니다. 땅따먹기 게임의 땅(land)은 총 N행 4열로 이루어져 있고, 모든 칸에는 점수가 쓰여 있습니다. 1행부터 땅을 밟으며 한 행씩 내려올 때, 각 행의 4칸 중 한 칸만 밟으면서 내려와야 합니다. 단, 땅따먹기 게임에는 한 행씩 내려올 때, 같은 열을 연속해서 밟을 수 없는 특수 규칙이 있습니다. 예를 들면, | 1 | 2 | 3 | 5 | | 5 | 6 | 7 | 8 | | 4 | 3 | 2 | 1 | 로 땅이 주어졌다면, 1행에서 네번째 칸 (5)를 밟았으면, 2행의 네번째 칸 (8)은 밟을 수 없습니다. 마지막 행까지 모두 내려왔을 때, 얻을 수 있는 점수의 최대값을 return하는 solution 함수를 완성해 주세요. 위 예의 경우, 1행의 네번째 칸 ..
문제 설명 자연수 n이 주어졌을 때, n의 다음 큰 숫자는 다음과 같이 정의 합니다. 조건 1. n의 다음 큰 숫자는 n보다 큰 자연수 입니다. 조건 2. n의 다음 큰 숫자와 n은 2진수로 변환했을 때 1의 갯수가 같습니다. 조건 3. n의 다음 큰 숫자는 조건 1, 2를 만족하는 수 중 가장 작은 수 입니다. 예를 들어서 78(1001110)의 다음 큰 숫자는 83(1010011)입니다. 자연수 n이 매개변수로 주어질 때, n의 다음 큰 숫자를 return 하는 solution 함수를 완성해주세요. 제한 사항 n은 1,000,000 이하의 자연수 입니다. 입출력 예 78 83 15 23 입출력 예 설명 입출력 예#1 문제 예시와 같습니다. 입출력 예#2 15(1111)의 다음 큰 숫자는 23(1011..