본문 바로가기

728x90
반응형

Major-

(864)
[LeetCode- Ch6. 큐와 스택] 2. 유효한 괄호 https://leetcode.com/problems/valid-parentheses/ 1. 여는 괄호가 있을 때와 없을 때로 구분하기 : 여는 괄호 있으면 현재 값을 확인해 여는 괄호와 맞는 닫는 괄호면 여는괄호 삭제 2. 그 외의 경우엔 넣기 3. 스택이 비었을 때 true 반환 import java.util.Stack; public class Solution { public static boolean isValid(String s) { //open일때 close일 때 //모두 비었을 때 -> true; int n = s.length(); Stack stack = new Stack(); for (int i = 0; i < n; i++) { System.out.println(i + " " +s.char..
[LeetCode- Ch6. 큐와 스택] 1. 야구게임 ## (+ Switch, Integer.parseInt, Integer.valueOf) https://leetcode.com/problems/baseball-game/ Baseball Game - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 1. 정규표현식을 이용해 음수 / 양수 포함한 숫자 체크 : 음수와 소수까지 처리 가능. public static boolean isNumeric(String s) { return s != null && s.matches("[-+]?\\d*\\.?\\d+"); } : 음수와 양수만 처리가능 public sta..
[LeetCode- Ch5. 연결 리스트] 1. 두 숫자 더하기 https://leetcode.com/problems/add-two-numbers/ Add Two Numbers - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 1. 노드의 구성요소 : 값과 다음 노드 2. 널이 아니면 반복해서 연결한다. -> 합이 일의자리가 넘어갈 때 사용하는 변수 carry /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next..
[LeetCode- Ch4. 투 포인터] 3. 문자열에서 모든 아나그램 찾기 https://leetcode.com/problems/find-all-anagrams-in-a-string/ Find All Anagrams in a String - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 1. rt만 이용해 추가할 경우 -> 타임리밋 발생 2. 초기값에서 문자를 하나씩 추가하는 방식으로 변경 1. rt만 이용해 반복해서 일치 확인 class Solution { public List findAnagrams(String s, String p..
[LeetCode- Ch4. 투 포인터] 2. 최대 2개의 고유 문자가있는 가장 긴 부분 문자열 ## https://www.lintcode.com/problem/928/description LintCode 炼码 www.lintcode.com 1. 배열을 이용한 풀이 2. Map을 이용한 풀이 1. 배열을 이용한 풀이 public class Solution { public int lengthOfLongestSubstringTwoDistinct(String s) { int[] map = new int[128]; int left = 0, right = 0, maxLen = 0, counter = 0; while (right < s.length()) { char c1 = s.charAt(right); if (map[c1] == 0) counter++; map[c1]++; right++; while (counte..
[LeetCode- Ch4. 투 포인터] 1. 단어중복없는 가장 긴 문자열 #(+ 슬라이딩 윈도우) https://leetcode.com/problems/longest-substring-without-repeating-characters/submissions/ Longest Substring Without Repeating Characters - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 1. rt를 이용해 문자열 길이까지 ++하면서 돈다. 2. 중복 처리 체크 3. 중복시 0으로 초기화 class Solution { public int lengthOfLo..
[LeetCode- Ch3. 배열] 7. 나선형 매트릭스 # https://leetcode.com/problems/spiral-matrix/ Spiral Matrix - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 나선형 매트릭스 :m x n의 요소로 이루어진 매트릭스로, 나선형 순으로 모든 요소를 출력 [동글뱅이] -> 상하좌우 위치 좌표값 변경을 이용해 문제해결 [0,0]:1, [0,1]:2, [0,2]:3, [0,3]:4 [1,0]:5, [1,1]:6, [1,2]:7, [1,3]:8 [2,0]:9, [2,1]:10..
[LeetCode- Ch3. 배열] 6. 누락된 범위 # (+ 삼항 연산자) https://www.lintcode.com/problem/641/ LintCode 炼码 www.lintcode.com 1. 예외처리 필수 2. 범위설정이 중요하다. -> 처음 / 중간 /끝 //배열이 존재하지 않을 때 list.add(makeRange(lower, upper)); //처음 list.add(makeRange(lower,nums[0]-1)); //중간 list.add(makeRange(nums[i]+1, nums[i+1]-1)); //끝 list.add(makeRange(nums[n-1]+1,upper)); 3. 삼항 연산자 사용한 범위 생성 메서드 작성 private static String makeRange(int start, int end){ //return start==end ? I..

728x90
반응형