최신 글
-
[백준/파이썬] 괄호 - 스택
[백준/파이썬] 괄호 - 스택 난이도: 실버4 시간 제한 메모리 제한 제출 정답 맞힌 사람 정답 비율 1 초 128 MB 189411 88844 63904 45.837% 문제 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 부른다. 한 쌍의 괄호 기호로 된 “( )” 문자열은 기본 VPS 이라고 부른다. 만일 x 가 VPS 라면 이것을 하나의 괄호에 넣은 새로운 문자열 “(x)”도 VPS 가 된다. 그리고 두 VPS x 와 y를 접합(concatenation)시킨 새로운 문자열 xy도 VPS 가 된다. 예를 들어 “(())(..
2023.12.13
-
[리트코드/파이썬] 739. Daily Temperatures (스택)
[리트코드/파이썬] 739. Daily Temperatures (스택) 난이도: Medium 739. Daily Temperatures Given an array of integers temperatures represents the daily temperatures, return an array answer such that answer[i] is the number of days you have to wait after the ith day to get a warmer temperature. If there is no future day for which this is possible, keep answer[i] == 0 instead. Example 1: Input: temperatures = [7..
2023.12.13
-
[리트코드/파이썬] 561. Array Partition(그리디)
[리트코드/파이썬] 561. Array Partition(그리디) 561. Array Partition 난이도: Easy Given an integer array nums of 2n integers, group these integers into n pairs (a1, b1), (a2, b2), ..., (an, bn) such that the sum of min(ai, bi) for all i is maximized. Return the maximized sum. Example 1: Input: nums = [1,4,3,2] Output: 4 Explanation: All possible pairings (ignoring the ordering of elements) are: 1. (1, 4), (2,..
2023.12.11
-
[리트코드/파이썬] 15. 3Sum(투 포인터)
[리트코드/파이썬] 15. 3Sum(투 포인터) 난이도: Given an integer array nums, return all the triplets [nums[i], nums[j], nums[k]] such that i != j, i != k, and j != k, and nums[i] + nums[j] + nums[k] == 0. Notice that the solution set must not contain duplicate triplets. Example 1: Input: nums = [-1,0,1,2,-1,-4] Output: [[-1,-1,2],[-1,0,1]] Explanation: nums[0] + nums[1] + nums[2] = (-1) + 0 + 1 = 0. nums[1] + n..
2023.12.11
-
[리트코드/파이썬] 5. Longest Palindromic Substring
[리트코드/파이썬] 5. Longest Palindromic Substring 5. Longest Palindromic Substring Medium Given a string s, return the longest palindromic substring in s 참고 palindromic 문자열: 왼쪽에서 오른쪽으로 읽으나 오른쪽에서 왼쪽으로 읽으나 같은 문자열을 말한다. Example 1: Input: s = "babad" Output: "bab" Explanation: "aba" is also a valid answer. Example 2: Input: s = "cbbd" Output: "bb" Constraints: 1 =0 and e=0 and e+1 e-s: s = i - (length-1)/..
2023.12.11
DB/SQL
-
SQL 24편: 저장 서브프로그램(프로시저, 함수, 패키지, 트리거)
PL/SQL로 작성한 내용을 단 한 번 실행하는 데 사용하는 경우는 익명 블록이라고 한다. 익명 블록은 오라클에 저장 되지 않기 때문에 다시 실행하려면 PL/SQL블록을 다시 작성하여 실행하여야 한다. 이런 불편함 때문에 필요한 것이 이름을 지정하여 오라클에 저장해두는 PL/SQL 프로그램인 '저장 서브프로그램'이다. 저장 서브프로그램은 저장할 때 한 번 컴파일을 하며, 공유하여 사용할 수 있고, 다른 응용 프로그램에서 호출도 가능하다. 대표적인 구현 방식은 다음과 같다. 저장 프로시저 특정 처리 작업 수행을 위한 서브 프로그램. SQL문에서는 사용할 수 없다. 저장 함수 특정 연산을 거친 결과 값을 반환하는 서브프로그램. SQL문에서 사용할 수 있다. 패키지 저장 서브프로그램을 그룹화 하는데 사용한다...
2022.01.26
-
SQL 23편: 예외 처리
오류, 예외 오류는 크게 두 가지로 구분된다. 1) 문법이 잘못되었거나 오타로 인한 오류: 컴파일 오류=문법 오류 2) 명령문의 실행 중 발생한 오류: 런타임 오류=실행 오류 이 중에서 오라클은 런타임 오류=실행 오류를 예외라고 한다. 예외 처리부 예외 처리는 예외가 발생하였을 때 프로그램이 비정상 종료가 되는 것을 막기 위해 EXCEPTION 영역에 필요 코드를 작 성하는 것을 뜻한다. 예외 처리부가 실행되면 예외가 발생한 코드 이후의 내용은 실행 되지 않는다. WHEN~THEN 절을 예외 핸들러라고 한다. 기본형식 EXCEPTION WHEN 예외이름1[OR 예외이름2] THEN 예외 처리에 사용할 명령어; WHEN 예외이름3[OR 예외이름4] THEN 예외 처리에 사용할 명령어; ... WHEN OT..
2022.01.25
-
SQL 22편: 커서
커서 SELECT문 또는 데이터 조작어 같은 SQL문을 실행했을 때 해당 SQL문을 처리하는 정보를 저장한 메모리 공간이다. SQL문의 결과 값을 사용할 수 있다. SELECT 문의 결과 값이 여러 행으로 나왔을 때, 각 행별로 특정 작업을 수행하도록 기능을 구현하는 것이다. 사용 방법에 따라 명시적 커서와 묵시적 커서로 나뉜다. *메모리 공간: =Private SQL Area, 커서는 이 메모리의 포인터를 말한다. SELECT INTO 방식이 조회되는 데이터가 단 하나의 행일 때 사용 가능한 방식인 것에 비해 커서는 결과 행이 하나이든 여러 개이든 상관 없이 사용할 수 있다. SELECT 열1, 열2, .... INTO 변수1, 변수2, ... FROM ... 1. 명시적 커서 기본 형식 DECLARE..
2022.01.23
-
SQL 22편: 레코드와 컬렉션
레코드 - 자료형이 각기 다른 데이터를 하나의 변수에 저장하는 데 사용한다. - 변수는 여러 개 지정할 수 있고(한 줄 당 변수 한 개), 각 변수는 쉼표로 구분한다. - 레코드에 포함된 변수를 사용할 때는 레코드이름.변수이름 으로 사용할 수 있다. 레코드 '자료형' 생성하기 TYPE 레코드이름 IS RECORD( 변수이름 자료형 NOT NULL := 표현식 ) 위에서 생성한 자료형으로 변수를 만들 때는 아래 쪽에 다음과 같이 선언해주어야 한다. 변수이름 레코드이름; 레코드를 사용하여 INSERT 하기 INSERT INTO 테이블이름 VALUES 레코드변수; 레코드를 사용하여 UPDATE 하기 UPDATE 테이블이름 SET ROW = 레코드변수 WHERE 조건식; 컬렉션 컬렉션의 종류 - 연관 배열 - ..
2022.01.20
-
SQL 21편: 조건 제어문(IF, CASE), 반복 제어문(LOOP)
조건 제어문 1. IF 조건문 종류 설명 IF-THEN 특정 조건을 만족하는 경우 수행 IF-THEN-ELSE 특정 조건을 만족하는 경우와 반대 경우에 각각 지정한 작업 수행 IF-THEN-ELSIF 여러 조건에 따라 각각 지정한 작업 수행 1) IF-THEN IF 조건식 THEN 수행할 문장; END IF; 2) IF-THEN-ELSE IF 조건식 THEN 수행할 문장; ELSE 수행할 문장; END IF; 3) IF-THEN-ELSIF IF 조건식 THEN 수행할 문장; ELSIF 조건식 수행할 문장; ELSIF 수행할 문장; ... ELSE 수행할 문장; END IF; 2. CASE 문 IF-THEN-ELSIF 문과 같이 조건식의 결과 값이 여러가지 일 때, CASE문을 사용하면 더욱 단순하게 표현..
2022.01.19
자바
-
[Java] 생성자 오버로딩
생성자 오버로딩 같은 이름의 생성자를 생성자 시그니쳐(갯수, 순서, 타입)만 다르게 정의하여 호출하는 것. 생성자 오버로딩을 활용하여 세 개의 파라미터를 받는 생성자의 첫 부분에 두 개의 파라미터를 받는 생성자를, 두 개의 파라미터를 받는 생성자의 첫 부분에는 한 개의 파라미터를 받는 생성자를 넣어 간결하게 표현할 수 있다. ※ this(type, type...) 같은 클래스에서 정의된 다른 생성자를 호출하는 키워드 호출하려는 생성자의 파라미터의 순서에 맞게 호출하면 된다. this생성자 호출은 생성자 첫머리에서만 가능하다. 딱 한번만 불러올 수 있다. package jun03; class Car{ String model; String color; String speed; int id; static in..
2022.03.17
-
[Java] java.util.comparator, java.util.comparable
Comparable & Comparator 원래 비교할 수 없는 객체들끼리의 비교를 가능하게 해 주는 인터페이스입니다. 둘 다 인터페이스이기 때문에, Comparable, Comparator 를 사용하려면 인터페이스 내에 선언된 메소드를 반드시 먼저 구현해야 합니다. 즉, Comparable 인터페이스에는 compareTo(T o) 메소드가 선언되어 있으므로, CompareTo 메소드를 구현(재정의=오버라이드)해야 하고 Comparator 인터페이스에는 compare(T o1, To2) 메소드를 선언되어 있으므로, Comparator 메소드를 구현해야 합니다. Comparable Comprable은 자기 자신과 매개변수 객체를 비교하고자 할 때 사용합니다. 따라서 다음과 같이 작성하게 됩니다. class..
2022.03.16
-
[Java] 메소드
메소드 자바는 클래스를 정의하고, 정의된 클래스의 객체를 만들어 여러가지 기능적인 일을 처리하도록 한다. 여기서 기능적인 일을 담당하는 것이 메소드이다. 이를 위해서 메소드를 정의하고, 그 일이 필요할 때 해당 메소드를 호출해서 사용한다. 이렇게 하면 같은 일을 수행하는 것을 반복적으로 코딩하지 않아도 된다. 01. 기본 형태 [접근지정자] 리턴타입 메소드명([파라미터]) { 메소드 내용 } ※ [ ] 은 상황에 따라 생략 가능한 부분 ※ 참고 메소드를 정의할 때의 매개변수(파라미터)는 형식매개변수(=가인수)이고, 메소드를 호출할 때의 매개변수의 값은 실인수라고 한다. EX. 메인 메소드 메인 메소드도 위와 같은 기본 형태를 따른다. public static void main(String[] args) ..
2021.08.23
-
[Java] next() 와 nextLine()의 차이와 주의점
next() 와 nextLine()의 차이와 주의점 Scanner stdIn = new Scanner(System.in); stdIn.nextInt( ); Scanner(System.in) 을 이용하면, 키보드로 입력한 값을 얻어낼 수 있다. (*stdIn : Standard Input) 위와 같이 nextInt()를 사용할 수도 있고, 원하는 자료형에 따라 nextByte() 등도 물론 가능하다. 하지만 항상 헷갈리는 것은 next()와 nextLine()이다. 메서드 자료형 next() String (스페이스 or 줄 바꿈 문자로 구분) nextLine() String (문자열 1줄) 둘다 String이지만, nextLine은 띄어쓰기를 무시하고 한 줄을 입력받는다. EX01. next() 직후 ne..
2021.08.23
-
[Java] DBeaver 이클립스에 연결하기
DBeaver 이클립스에 연결하기 Eclipse MarketPlace 에서 다운받은 DBeaver를 연결해보려고 한다.
2021.08.17
-
[Java] 웹 디자인 프로그램 Oven, adobe XD
웹 디자인 프로그램 홈페이지, 어플의 디자인만을 하고 싶을 때 활용할 수 있는 프로그램 1. Oven ▼링크 OvenApp.io Oven(오븐)은 HTML5 기반의 무료 웹/앱 프로토타이핑 툴입니다. (카카오 제공) ovenapp.io 2. adobe XD 홈페이지, 어플의 디자인을 하고 싶을 때 사용하는 웹 프로그램 https://www.adobe.com/kr/products/xd.html
2021.08.11
-
[Java] JSTL 연결하기
JSP에 JSTL 연결하기 링크 Index of /dist/jakarta/taglibs/standard Index of /dist/jakarta/taglibs/standard Name Last modified Size Description Parent Directory - binaries/ 2005-10-05 20:39 - source/ 2005-10-05 20:38 - Standard Taglib 1.1.x Releases This directory contains releases for the 1.1.x versions of the Standard Ta archive.apache.org cos.jar 다운로드 파일 업로드를 하고 싶다면, cos.jar도 다운 받아야 한다. 링크 Servlets.com..
2021.08.10
-
[Java] JQuery 프로젝트에 연결하기
JQuery 프로젝트에 연결하기 jQuery CDN The integrity and crossorigin attributes are used for Subresource Integrity (SRI) checking. This allows browsers to ensure that resources hosted on third-party servers have not been tampered with. Use of SRI is recommended as a best-practice, whenever libr code.jquery.com 다운로드 하지 않고, 위 사이트에서 CDN(콘텐츠 전송 네트워크)으로 연결하여 사용할 것이다. ▲ 위 사이트를 들어가지 않고 코드만 복사하고 싶은 분들은 위 코드를 복사해주..
2021.08.09
-
[Java] 썸머노트 다운로드 및 사용법
썸머노트 다운로드 Summernote Download 내용 입력 에디터가 필요할 때 사용하는 프로그램이다. summernote를 다운받아 연결하면 간단하게 에디터를 가져와 쓸 수 있다. 썸머노트 공식 홈페이지 링크 Summernote - Super Simple WYSIWYG editor Super Simple WYSIWYG Editor on Bootstrap Summernote is a JavaScript library that helps you create WYSIWYG editors online. summernote.org 다운로드 받기 프로젝트에 썸머노트 연결하기 summernote 홈페이지를 혹시 닫았다면, 아래 코드를 복사 붙여넣기 하여 사용하면 된다. 그럼 썸머노트를 사용할 준비는 완료되었다...
2021.08.05