전체 글 182

TIL (03.25)

CodeKata [프로그래머스_Kotlin] 공원 산책 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 지 rlawog.tistory.com 알고리즘 풀면서 map을 많이 사용했는데 다른 사람의 풀이를 보니 hashMap을 많이 사용하여서 차이점이 궁금해서 찾아보았다. Map key-value를 가진 집합으로 중복을 허용하지 않는다. 한 개의 key에 한 개의 value가 매칭된다. TreeMap, HashTable, HashMap 등이 있다. 정리하면 Key-Value로 이루어진 데이터의 집합으로 순서는 유지되지 않으며, 키는 중복을 허용하지 않는다..

Kotlin/TIL 2024.03.25

[프로그래머스_Kotlin] 공원 산책

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 지나다니는 길을 'O', 장애물을 'X'로 나타낸 직사각형 격자 모양의 공원에서 로봇 강아지가 산책을 하려합니다. 산책은 로봇 강아지에 미리 입력된 명령에 따라 진행하며, 명령은 다음과 같은 형식으로 주어집니다. ["방향 거리", "방향 거리" … ] 예를 들어 "E 5"는 로봇 강아지가 현재 위치에서 동쪽으로 5칸 이동했다는 의미입니다. 로봇 강아지는 명령을 수행하기 전에 다음 두 가지를 먼저 확인합니다. 주어진 방향으로 이동할 때 공원을 벗어나는지 확인합니다. 주어진 방향으로 이동 중 장애물을 만나는..

프로그래머스 2024.03.25

Android - SharedPreferences

SharedPreferences ? 간단한 값을 저장할 때 주로 사용된다. 초기 설정 값이나 자동 로그인 여부 등 간단한 값을 저장할 때 DB를 사용하면 복잡하기에 SharedPreferences 사용이 적절하다. Key - Value 형태로 저장한다. 애플리케이션을 파일 형태로 데이터를 저장한다. 사용 1. layout main과 작성할 add Activity를 만들어준다. addActivity의 EditText에서 받아온 text를 mainActivity의 TextView에 띄울 것이다. 추가적으로 앱을 종료했을 때도 저장되도록 하려한다. activity_main activity_add 코드 ↓ 더보기 Main.xml Add.xml 2. 코드 작성 const.kt 생성 const val INFORMA..

Android Studio 2024.03.25

TIL (03.22)

Kotlin 문법 mutable / immutable의 가변성 제약 알고리즘을 풀면서 생각없이 mutableList, map 등을 만들면서 풀었는데 인텔리제이에서 노란전구(ReSharper)가 떠있어서 갑자기 궁금해져서 찾아보게 되었다. 가급적 val, immutable-collections을 사용 var과 val의 커스텀 getter를 사용하면 변경 가능한 것과 같은 val 프로퍼티를 표현 할 수 있다. Collection을 Mutable Collection으로 Down-casting하는 것은 위험하다. 필요한 경우엔 toMutableList()와 같은 함수를 사용하라. 변경 가능한 Collection은 val + Mutable Collection / var + Immutable Collection이 ..

Kotlin/TIL 2024.03.22

TIL (03.21)

KodeCata [프로그래머스_Kotlin] 달리기경주 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 얀 rlawog.tistory.com Kotlin 문법 Companion Object에 대해 학습하다가 나중에 모아서 학습하기 위해서 Kotlin In Action 5강 진행중이다. 람다와 멤버참조에 대해 학습하였다. (알고리즘 풀면서 사용은 많이 했어서 이해가 잘됨) 나머지 maxBy{} filter / map joinToString count / find / groupBy / Any / All 노션에 정리 Android Architecture (..

Kotlin/TIL 2024.03.21

[프로그래머스_Kotlin] 달리기경주

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 얀에서는 매년 달리기 경주가 열립니다. 해설진들은 선수들이 자기 바로 앞의 선수를 추월할 때 추월한 선수의 이름을 부릅니다. 예를 들어 1등부터 3등까지 "mumu", "soe", "poe" 선수들이 순서대로 달리고 있을 때, 해설진이 "soe"선수를 불렀다면 2등인 "soe" 선수가 1등인 "mumu" 선수를 추월했다는 것입니다. 즉 "soe" 선수가 1등, "mumu" 선수가 2등으로 바뀝니다. 선수들의 이름이 1등부터 현재 등수 순서대로 담긴 문자열 배열 players와 해설진이 부른 이름을 담은 ..

프로그래머스 2024.03.21

TIL (03.20)

CodeKata 문제 시간초과로 아침까지 풀 예정 문제를 풀다가 kotlin에도 swap이 있나 찾아봤다. import java.util.* fun main(){ var a = 1 var b = 2 a = b.also { b = a } println(a) // 출력 2 println(b) // 출력 1 //------------------------------------------------------------- val nums = listOf(1, 2, 3, 4, 5) Collections.swap(nums, 1, 3) //import java.util.* println(nums) // 출력 [1, 4, 3, 2, 5] } Kotlin 문법 오늘 Kotlin In Action에서는 object내용 복..

Kotlin/TIL 2024.03.20