자료구조와 알고리즘
-
level 1 - 체육복자료구조와 알고리즘/프로그래머스 문제풀이 2020. 7. 15. 12:59
programmers.co.kr/learn/courses/30/lessons/42862 코딩테스트 연습 - 체육복 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번� programmers.co.kr import java.util.Arrays; class Solution { public int solution(int n, int[] lost, int[] reserve) { int[] cloths = new int[n]; for (int lostNum : lost) { cloths[lostNum - 1]--; } for (int reserveNum : reserve) { c..
-
level 1 - 완주하지 못한 선수자료구조와 알고리즘/프로그래머스 문제풀이 2020. 7. 10. 18:42
마라톤 참가자 배열과 완주자 배열이 주어질 때 완주하지 못한 한 사람을 찾아 이름을 반환하는 문제이다. [풀이 과정] 1. 주어진 배열의 이름 순서가 정렬되어 있지 않아서 정렬을 한다. 2. 참가자, 완주자 배열을 순서대로 비교하여 일치하지 않는 경우 참가자의 이름을 반환한다. public class 완주하지_못한_선수 { public String solutoin(String[] participant, String[] completion) { Arrays.sort(participant); Arrays.sort(completion); for (int i = 0 ; i < completion.length ; i++ ) { if (!completion[i].equals(participant[i])) retur..
-
Valid Parentheses자료구조와 알고리즘/LeetCode 문제풀이 2020. 6. 26. 13:27
Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid. An input string is valid if: Open brackets must be closed by the same type of brackets. Open brackets must be closed in the correct order. Note that an empty string is also considered valid. 문장 안에 여는 괄호가 있을 때 ,그 뒤에 알맞는 닫는 괄호가 있는지 검사하는 알고리즘을 만드는 문제이다. 1. 여는 괄호와 닫는 괄호를 매치시켜야 되므로 H..
-
Two Sum자료구조와 알고리즘/LeetCode 문제풀이 2020. 6. 24. 13:11
Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would have exactly one solution, and you may not use the same element twice. 예시) int[] numbers = {1,1,3}; int target = 2; int[] result = solution(numbers, target); // [0, 1] System.out.println(Arrays.toString(result)); 풀이) 정수형 배열에 속하는 두 정수를 더해서 target과 같을 때, 두 ..
-
최대값 구하기자료구조와 알고리즘 2019. 10. 30. 13:45
3개의 정수를 입력받아 최대값을 구하는 법을 알아보겠습니다. import java.util.Scanner; public class Max3 { public static void main(String[] args) { // 3개의 정수를 입력받기 위해 Scanner 객체를 생성 // 이 때 System.in은 표준입력스트림으로 키보드 입력에 반응합니다. Scanner scan = new Scanner(System.in); // 3개의 정수를 받을 배열 생성 int[] num = new int[3]; // 최대값을 저장할 지역변수 생성 및 초기화 int max = 0; for (int i = 0; i < num.length; i++) { System.out.print((i+1) + "번째 값을 입력하시오."..