Java 알고리즘 (4)

이재하·2023년 7월 30일
0

항해99

목록 보기
12/48
post-custom-banner

알고리즘 문제

  1. 중복된 숫자 개수
  2. 배열의 평균값
  3. 짝수 홀수 개수
  4. 배열 자르기
  5. 배열 원소의 길이
  6. 배열 뒤집기
  7. 최댓값 만들기

중복된 숫자 개수

class Solution {
    public int solution(int[] array, int n) {
        int answer = 0;                   
        
        for(int i=0; i < array.length; i++)   
            if(array[i] == n) {               
                answer++;                   
            }
        return answer;                    
    }
}

배열의 평균값

class Solution {
    public double solution(int[] numbers) {
        double answer = 0;
        int total = 0;                              
        for(int i = 0; i < numbers.length; i++) {   
            total += numbers[i];                    
        }
        answer = (double)total / numbers.length;
        return answer;
    }
}

짝수 홀수 개수

class Solution {
    public int[] solution(int[] num_list) {
        int[] answer = new int[2];
        int left = 0;
        int right = 0;

        for(int i = 0; i < num_list.length; i++) {
            if (num_list[i] % 2 == 0) {
                left++;
            }
            else {
                right++;
            }
        }

        answer[0] = left;
        answer[1] = right;

        return answer;
    }
}

배열 자르기

import java.util.Arrays;

class Solution {
    public int[] solution(int[] numbers, int num1, int num2) {
        int[] answer = {};
        answer = Arrays.copyOfRange(numbers, num1, num2+1);
        return answer;
    }
}

배열 원소의 길이

class Solution {
    public int[] solution(String[] strlist) {
        int[] answer = new int[strlist.length];

        for (int i = 0; i < answer.length; i++) {
            answer[i] = strlist[i].length();
        }
        return answer;
    }
}

배열 뒤집기

다시보기

class Solution {
    public int[] solution(int[] num_list) {
        int[] answer = new int[num_list.length];
        for(int i = 0;i<num_list.length;i++){
            answer[i]=num_list[num_list.length-i-1];
        }
        return answer;
    }
}

최댓값 만들기

class Solution {
    public int solution(int[] numbers) {
        int answer = 0;
        int max = 0;

        for(int i = 0; i < numbers.length; i++) {
            for (int j = i + 1; j < numbers.length; j++) {
                if (numbers[i] * numbers[j] > max) {
                    max = numbers[i] * numbers[j];
                }
            }
        }
        answer = max;

        return answer;
    }
}
post-custom-banner

0개의 댓글