TIL

스파르타 내배캠 Spring 33일차

dzzzdee 2022. 12. 4. 23:14

2022.12.02

자바 개념 복습

 

    • 추상클래스란? 추상클래스는 추상메소드를 선언할 수 있는 클래스를 의미합니다. 또한 추상클래스는 클래스와는 다르게 상속받는 클래스 없이 그 자체로 인스턴스를 생성할 수는 없습니다.
    • 추상메소드란?
    • 추상메소드는 설계만 되어있으며 수행되는 코드에 대해서는 작성이 안된 메소드입니다.
    • 이처럼, 미완성으로 남겨두는 이유는 상속받는 클래스 마다 반드시 동작이 달라지는 경우에 상속받는 클래스 작성자가 반드시 작성하도록하기 위함입니다.

 

오늘의 알고리즘!

자연수 뒤집어 배열로 만들기

자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다.

class Solution {
    public int[] solution(long n) {
        String s = "" + n;
        int[] answer = new int[s.length()];
        int j = 0;
        
        while (n > 0) {
            answer[j] = (int) (n%10);
            j += 1;
            n /= 10;
        }
        
        
        return answer;
    }
}

배열의 크기를 입력받은 n만큼으로 설정하고 j = 0을 선언

10으로 n을 나눈 나머지를 answer[j]에 대입 이때 j는 0이므로 첫번째가 된다 

그 후 j를 1씩 더해준 다음 n을 10으로 나눠준다 이때 n이 0보다 크다면 계속 while문은 반복된다.