본문 바로가기

java20

Programmers 타겟 넘버 Java 문제 설명 n개의 음이 아닌 정수가 있습니다. 이 수를 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. -1+1+1+1+1 = 3 +1-1+1+1+1 = 3 +1+1-1+1+1 = 3 +1+1+1-1+1 = 3 +1+1+1+1-1 = 3 사용할 수 있는 숫자가 담긴 배열 numbers, 타겟 넘버 target이 매개변수로 주어질 때 숫자를 적절히 더하고 빼서 타겟 넘버를 만드는 방법의 수를 return 하도록 solution 함수를 작성해주세요. 제한사항 주어지는 숫자의 개수는 2개 이상 20개 이하입니다. 각 숫자는 1 이상 50 이하인 자연수입니다. 타겟 넘버는 1 이상 1000 이하인 자연수입니다. .. 2021. 3. 11.
Programmers 네트워크 Java 문제 설명 네트워크란 컴퓨터 상호 간에 정보를 교환할 수 있도록 연결된 형태를 의미합니다. 예를 들어, 컴퓨터 A와 컴퓨터 B가 직접적으로 연결되어있고, 컴퓨터 B와 컴퓨터 C가 직접적으로 연결되어 있을 때 컴퓨터 A와 컴퓨터 C도 간접적으로 연결되어 정보를 교환할 수 있습니다. 따라서 컴퓨터 A, B, C는 모두 같은 네트워크 상에 있다고 할 수 있습니다. 컴퓨터의 개수 n, 연결에 대한 정보가 담긴 2차원 배열 computers가 매개변수로 주어질 때, 네트워크의 개수를 return 하도록 solution 함수를 작성하시오. 제한사항 컴퓨터의 개수 n은 1 이상 200 이하인 자연수입니다. 각 컴퓨터는 0부터 n-1인 정수로 표현합니다. i번 컴퓨터와 j번 컴퓨터가 연결되어 있으면 computers[.. 2021. 3. 11.
HashMap, 이 친구의 이야기 공식문서로 알아보자 [Java 11] 1. HashMap이란? HashMap은 Map인터페이스의 해시 테이블 기반으로 구현한다. 기본 형태는 HashMap은 형태를 가진다. 여기서 Key는 이 Map의 중심이 되는 key 유형을 의미하고 Value의 경우 매핑되는 값의 유형을 의미한다. - 이 구현은 모든 선택적 작업을 제공하고 null value값과 null key값을 허용한다. - 이 클래스는 순서를 보장하지 않는다. - 시간이 지나도 일정하게 유지된다는 보장이 없다. - key값을 중복이 불가능하고 value는 중복이 가능하다. value에 null값도 사용 가능하다. - multi thread에서 동시에 HashMap을 건드려 Key-Value값을 사용하면 문제가 될 수 있다. multi thread에서는 HashTable을 쓴다. .. 2021. 3. 9.
오버로딩(Overloading)과 오버라이딩(Overriding) 오버라이딩(overriding) : 부모 클래스의 메소드의 동작 방법을 변경(재정의)하여 우선적으로 사용. 오버로딩(overloading) : 이름은 같지만 시그니처(파라미터, 수, 타입)되는 다른 메소드를 중복으로 선언하는 것. 1. 오버라이딩(overriding) 오버라이드 하고자 하는 메서드가 상위클래스에 존재해야 한다. 메서드 이름이 같아야한다. 메서드 파라미터의 갯수, 자료형이 모두 같아야한다. 메서드 리턴타입이 같아야 한다. 상위 메서드와 동일하거나 내용이 추가(재정의)되어야 한다. 2. 오버로딩(overloading) 메소드 이름이 같아야 한다. 리턴타입이 같거나 달라도 된다. 리턴타입은 시그니처에 포함되지 않기때문에 주의, 컴파일 에러 발생 파라미터 갯수가 달라야한다. 파라미터 개수가 같을.. 2021. 3. 7.