개발노트/프로그래머스

프로그래머스 문자 정렬하기(2) 코틀린

시계속세상은아직돌아가는중 2023. 8. 3. 14:57

https://school.programmers.co.kr/learn/courses/30/lessons/120911

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

package com.example.answersheet


fun main() {

    var my_string: String = "heLLo"
    var strings = my_string.toCharArray()
    var answer: String = ""

    for (i in 0 until strings.size) {
        if (strings[i].toInt() in 65..90) {
            strings[i] = (strings[i].toInt() + 32).toChar()
        }
    }
    
    for (j in 0 until strings.size) {
        for (y in 0 until strings.size - 1 - j) {
            val temp = strings[y]
            if (strings[y] > strings[y + 1]) {
                strings[y] = strings[y + 1]
                strings[y + 1] = temp
            }
        }
    }

    answer = strings.joinToString("")

        println(answer)
    }
class Solution {
    fun solution(my_string: String): String {
        var answer: String = ""
        var strings = my_string.toCharArray()
        
        for (i in 0 until strings.size) {
        if (strings[i].toInt() in 65..90) {
            strings[i] = (strings[i].toInt() + 32).toChar()
        }
       
    }
         for (j in 0 until strings.size) {
            for (y in 0 until strings.size - 1 - j) {
                val temp = strings[y]
                if (strings[y] > strings[y + 1]) {
                    strings[y] = strings[y + 1]
                    strings[y + 1] = temp
                }
            }
        }
        answer = strings.joinToString("")
        return answer
    }
}

 

이전 문제들에서 했던 대문자 소문자 변환 후 정렬을 다시해준 모습이다.

strings는 char형 배열이기 때문에 각 문자들의 아스키코드 숫자값으로 비교가 가능하다.

이후에 string으로 변환하기 위해 joinToString("")을 써서 리턴해준 모습이다.