문제 https://school.programmers.co.kr/learn/courses/30/lessons/68644 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 풀이 import java.util.Iterator; import java.util.Set; import java.util.TreeSet; class Solution { private static Set set = new TreeSet(); public int[] solution(int[] numbers) { boolean[] visited = new boolean[numbers.len..
전체 글
기초가 가장 중요하다> 배열과 리스트의 차이도 같이 보면 좋을듯 2023.02.22 - [개발공부/Java] - Array & List 차이 1. Array (배열) 처음에 크기를 지정해줘서 메모리에 할당되어 나오기 때문에 크기 수정이 불가능하다. fun array() { val array = arrayOf(1,2,3) val array2 = arrayOf(1, "2", 3.4f) array[0] = 3 } - arrayOf 메서드를 사용해서 초기화한다. - 타입을 여러개 넣는 것도 가능하다. - 인덱스로 값 수정이 가능하다. 2. List (리스트) 리스트에서 크게 두 가지로 나누어진다. 1. List 읽기 전용이며 수정을 못한다. fun array() { val list = listOf(1,2,3) val list2 =..
1. Array(배열): 메모리의 연속 공간에 값이 채워져 있는 형태의 자료구조 배열의 값은 인덱스를 통해 참조할 수 있으며, 선언한 자료형의 값만 저장할 수 있다. 특징인덱스를 사용하여 값에 바로 접근할 수 있다.새로운 값을 삽입하거나 특정 인덱스에 있는 값을 삭제하기 어렵다. 값을 삽입하거나 삭제하려면 해당 인덱스 주변에 있는 값을 이동시키는 과정이 필요하다.배열의 크기는 선언할 때 지정할 수 있으며, 한 번 선언하면 크기를 늘리거나 줄일 수 없다.구조가 간단하므로 코딩 테스트에서 많이 사용한다. 2. List(리스트): 값과 포인터를 묶은 노드라는 것을 포인터로 연결한 자료구조 특징인덱스가 없으므로 값에 접근하려면 Head 포인터부터 순서대로 접근해야 한다. 다시 말해 값에 접근하는 속도가 느리다..
> 간단하게 , 무언가를 투닥투닥 해서 값을 만들어내면 Expression 결과가 값이 아닌 다른 형태로 나오면 Statement 라고 이해하면 된다. 예시로 이전 포스팅의 checkNum 메서드를 가져와보면 fun checkNum(score: Int){ when(score){ 0 -> println("this is 0") 1 -> println("this is 1") 2,3 -> println("this is 2 or 3") else -> println("I don't know") } var b = when(score) { 1 -> 1 2 -> 2 else -> 3 } when (score){ in 90..100 -> println("You are genius") in 80..90 -> println(..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/159994 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 풀이 class Solution { public String solution(String[] cards1, String[] cards2, String[] goal) { String answer = "Yes"; int idx1 = 0; int idx2 = 0; for (int i = 0; i < goal.length; i++) { if (idx1 < cards1.length && car..
> 1. if 두 수의 크기 비교 후 큰 수를 반환하는 메서드를 구현해보자. fun maxBy(a: Int, b: Int): Int { if (a > b) { return a } else { return b } } 기본적으로는 위와 같이 작성한다. 코틀린에는 삼항 연산자가 없다. 그러나, 자바에서 삼항연산자처럼 코틀린에서는 저 위의 7줄 코드를 1줄로 요약이 가능하다. fun maxBy(a: Int, b: Int) = if (a > b) a else b 2. when 코틀린의 when은 자바의 switch를 생각하면 된다. 점수를 체크하는 메서드를 구현해보았다. fun checkNum(score: Int){ when(score){ 0 -> println("this is 0") 1 -> println("t..