TIL #11

loci·2024년 5월 10일
0

TIL

목록 보기
10/103

문자열 내 마음대로 정렬하기

//Mutable 배열 (변경가능) 
arr.sort() // 문자열을 사전적 오름차순 정렬
arr.sortDescending() // 문자열을 사전적 내림차순 정렬

//Immutable 배열 (변경불가)
var arr2 = arr.sortedArray() // 오름차순 정렬 후 반환 
var arr2 = arr.sortedArrayDescending() // 내림차순 정렬 후 반환

var list = arr.sorted() // 정렬 후 오름차순 리스트로 반환
var list = arr.sortedDesecending() // 정렬 후 내림차순 리스트로 반환

arr.sortWith(compareBy({it[n]}, {it})) // it[n]에 대한 정렬 수행후 이를 기반으로 it에 대한 정렬 수행

나의 풀이

class Solution {
    fun solution(strings: Array<String>, n: Int): Array<String> {
        var answer = arrayOf<String>()
        
        strings.sortWith(compareBy({it[n]}, {it}))

        return strings
    }
}

다른사람의 풀이

class Solution {
    fun solution(strings: Array<String>, n: Int): Array<String> {
        return strings.also {
            it.sort()
            it.sortBy { it[n] }
        }
    }
}

사전적 정렬 후 n에 대항 정렬 수행


스타터 노트

  1. 내가 Android 트랙에 참여한 계기는 무엇인가요?
    • 체계적인 학습을 하기 위해서
    • 팀 프로젝트참여
  2. 내가 이해한 Android 개발자/앱개발자는 어떤 역할을 하는 사람인가요?
    • 사용자에게 필요한 좋은 서비스를 이용할수있도록 제공하는 사람
  3. 개발을 경험해보셨나요? 해보셨다면 어떤 경험을 하셨는지 작성해주시고, 아니라면 앱개발에 대해 찾아본 것을 작성해주세요.
    • 안드로이드 기초적인 강의 수강
  4. Android 개발자의 역할을 수행하는 데에 있어 나의 강점과 연관된 부분은 무엇이라고 생각하나요?
    혹은 보완, 개선하고 싶은 개인 역량이 있나요 ?
    - 강점은 끈질김,집요함과 같은 인내심
    - 개선하고 싶은 역량은 개발실력과 다른사람 코드를 보고 쉽게 이해할 수 있는 능력
  5. 본 코스 수료 후, 어떤 웹개발자로 성장하고 싶나요?
    • 다른 사람과 협업에 있어서 부족하지 않은 실력
  6. 그 외에 우리 트랙에 기대하는 것이 있다면 자유롭게 작성해 주세요.
    • 동기부여
profile
편리한 개발자

0개의 댓글