목록전체 글 (21)
이븐곰의 프로그래밍
문제) https://leetcode.com/problems/longest-substring-without-repeating-characters/description/코드)import java.util.*;class Solution { public int lengthOfLongestSubstring(String s) { Set subSet = new HashSet(); int result = 0; int previous = 0; int index = 0; while(index
문제) https://leetcode.com/problems/base-7/description/입력받은 숫자를 7진수 형식의 문자열로 반환 제한사항)-10^7 문제접근)Java Integer class 내 특정 메소드만 알면 쉽게 해결 가능class Solution { public String convertToBase7(int num) { return Integer.toString(num, 7); }} 결과) 참고)Java 에서는 Integer 클래스 내 다음 메소드에서 진법 변환을 지원한다.Integer.toString(int number, int radix) : StringInteger.parseInt(String target, int radix) : intInteger.toB..
문제) https://leetcode.com/problems/next-greater-element-ii/description/int 배열이 입력될 때, 각 index의 값보다 첫번째 큰 값을 찾아 배열을 만들어 반환하는 문제이 때, 입력되는 int 배열 nums는 순환 배열로 인식(ex. nums의 마지막 인덱스까지 돌아서 못찾았을 경우, 0번째 인덱스에서 다시 조회)제한사항)1 -10^9 해결)import java.util.*;class Solution { public int[] nextGreaterElements(int[] nums) { int[] result = new int[nums.length]; Stack stack = new Stack(); for(..
문제) https://leetcode.com/problems/next-greater-element-i/description/숫자가 들어있는 배열 nums1, nums2가 입력될 때, nums1의 배열의 요소들보다 큰 값이 nums2에 있는 경우, 해당 값을 그렇지 않을 경우 -1을 반환제한사항)1 0 nums1과 nums2는 모두 유일한 요소를 가짐nums1은 nums2의 서브 배열문제접근)nums2에서 nums1의 요소를 찾아서 그 이후 index에서 비교 대상 nums1의 요소보다 큰 값을 찾는 문제두 배열의 요소의 값은 10^4로 Integer로 처리 가능nums2의 요소별 인덱스를 map에 담아, nums1의 요소를 찾을 때 해당 맵에서 그 요소의 index 이후 index부터 검색하도록 하여 조..
문제) https://leetcode.com/problems/smallest-missing-integer-greater-than-sequential-prefix-sum/description/순차적인 숫자가 들어있는 nums 배열이 입력될 때, nums 내에서 Sequential Prefix 배열을 찾아서 해당 배열의 sum 보다 같거나 크면서 배열 nums에 없는 가장 작은 값을 반환nums[0..i] 는 순차적이며, 1 제한사항)i 1 문제접근)입력받은 배열은 순차적으로 1씩 증가하는 서브 배열로부터 시작서브 배열을 찾아서, sum을 구한다sum보다 같거나 크면서, nums에 없는 가장 작은 값을 구한다해결)import java.util.*;class Solution { public int mi..
문제 )문자열이 들어있는 배열 strs가 입력되었을 때, strs 내 문자열들의 가장 긴 Prefix를 반환 제한사항)1 0 strs[i] 는 모두 소문자로만 이루어져있음 문제 접근)입력된 문자들의 공통 부분을 찾는 문제첫번째 문자열의 문자를 기준으로 strs 배열을 순회하며 동일한 문자가 있을 경우, 해당 문자를 결과를 저장할 StringBuilder에 append문자열의 배열은 최대 200개, 한 개의 문자열은 최대 200개의 문자로 이루어짐으로 모든 케이스를 검사한다고 할 때, 최악의 경우 200 * 200 = 40,000 번의 순회가 필요함결과는 StringBuilder에 저장하여, 불필요한 메모리 사용을 최소화 해결1)class Solution { public String longestCo..
Java 의 전체 버전 정보는 아래 Release 페이지에서 알 수 있다. https://www.java.com/releases/ JDK ReleasesThe release information on this page covers the JDK releases that were widely distributed or significant to the development of Java. It does not cover patch releases or other one-off releases.www.java.com 위 페이지를 보면 알겠지만 자바는 자주 업데이트가 진행된다.하지만 실무에서 사용할 때는 최신 버전이라고 마냥 쓸 수 없다.사용하다 보면 이전에는 몰랐던 보안 이슈 등이 발생하고,지원이 종료된 ..
테스트 설계 기법 테스트 케이스를 도출하고 수행하여 테스트 대상의 테스트 수준을 확인하기 위해 사용 테스트 설계 및 구현 프로세스 테스트 설계 기법을 이용하여 테스트 케이스와 테스트 데이터를 설계하고 명세화한다. 테스트케이스는 입력값 집합, 실행 사전 조건, 수행 절차, 기대 결과와 실행 사후 조건으로 구성되며 특정 테스트 조건을 확인하기 이해 작성한다. 분류 테스트케이스 설명 TC ID 상세 설명 실행 사전 조건 수행 절차 입력값 기대값 결과 * 테스트 케이스 양식 사례 테스트 설계 및 구현 단계에서 테스트 케이스를 설계하고 작성한 후 우선 순위를 선정하고 배치하야 테스트 프로시저 명세서를 만든다. 테스트 프로시저 명세서는 효율적인 테스트를 위한 테스트 케이스 실행 순서이다. 테스트 케이스 작성 시 실..