[TIL] 20231030

Xtraa·2023년 10월 30일
0

TIL

목록 보기
9/99

공부한 내용

1. Generic 제네릭

2. 기초 of 기초 for Web

  • 웹 서비스란 무엇인가?
    • 웹 공간에서 제공되는 서비스
    • 그 서비스를 설계/제작/관리 하는 것이 웹 개발자
  • 웹 서비스의 동작
    • 클라이언트 <-> 서버 상호작용
  • 웹서버
    • 프론트엔드 + 백엔드
    • 주요 기능은 (정적)페이지 제공, API 제공
      • RESTful API, GraphQL API
  • 모던 웹서비스 구성방법
  • 웹의 역사

3. 프로그래머스 코딩테스트 입문 Day3

3-1 나머지 구하기

3-2 중앙값 구하기

class Solution {
    public int solution(int[] array) {
        for (int i = 0; i < array.length - 1; i++) {
            for (int j = 0; j < array.length - 1; j++) {
                if (array[j] > array[j+1]) {
                    int temp = array[j];
                    array[j] = array[j+1];
                    array[j+1] = temp;
                }
            }
        }
        
        int answer = array[array.length / 2];
        return answer;
    }
}

array.sort()로 구하는건 너무 쉬운거 같아서 만들어본 코드
근데 이렇게 하면 중간에 정렬이 끝나도 반복문이 끝나기 전까지 계속 돌아가는게 단점이였음
그래서 정렬이 끝나면 반복문도 끝나게 하면 어떨까 생각함

class Solution {
    public int solution(int[] array) {
        for (int i = 0; i < array.length - 1; i++) {
            int checkNum = 0; // 한 번의 정렬이 끝나면 다시 0으로
            for (int j = 0; j < array.length - 1; j++) {
                if (array[j] > array[j+1]) {
                    int temp = array[j];
                    array[j] = array[j+1];
                    array[j+1] = temp;
                    checkNum++; // 0에서 1이 되기 때문에 계속 실행
                }
            }
            if (checkNum == 0) {
                break; // 반복문 탈출
            }
        }
        
        int answer = array[array.length / 2];
        return answer;
    }
}

3-3 최빈값 구하기

map에 대한 지식++

import java.util.*;

class Solution {
    public int solution(int[] array) {
        int maxCount = 0;
        int answer = 0;
        Map<Integer, Integer> map = new HashMap<>();
        for (int num : array) {
        	// getOrDefault메서드 : 주어진 key에 해당하는 값을 찾는다.
            // 그 값이 있다면 그 값을 반환하고 없다면 지정된 Defualt값을 반환
            int count = map.getOrDefault(num, 0) + 1;
            if (count > maxCount) {
                maxCount = count;
                answer = num;
            } else if (count == maxCount) {
                answer = -1;
            }
            map.put(num, count);
        }
        return answer;
    }
}

3-4 짝수는 싫어요

정수 n이 매개변수로 주어질 때, n 이하의 홀수가 오름차순으로 담긴 배열을 return하도록 solution 함수를 완성해주세요.

class Solution {
    public int[] solution(int n) {
        int[] arr = new int[50];
        int num = 0;
        
        for(int i = 1; i <= n; i++) {
            if(i % 2 != 0) {
                arr[num] = i;
                num++;
            }
        }
        
        int[] answer = new int[num];
        for(int i = 0; i < num; i++){
            answer[i] = arr[i];
        }
        
        return answer;
    }
}

하루를 돌아보며, TMI

오늘 집중해서 공부 잘했다. 만족!

profile
https://xtraa.notion.site/Xtraa-ed48ac432d354d01b5bf5b0da5ec94a9?pvs=4

0개의 댓글