공log/[JAVA] 5

[JAVA] 자바 #5 - 정규식

정규식(Regular Expression)에 대한 이해 정규식(Regular Expression)은 문자열 패턴을 정의하고 검색하거나 변환하는 데 사용되는 강력한 도구입니다. 정규식은 많은 프로그래밍 언어와 텍스트 에디터에서 지원되며, 문자열 처리 작업을 효과적으로 수행하는 데 유용합니다. 다양한 종류의 정규식을 사용하여 다양한 패턴을 일치시킬 수 있습니다. 정규식의 기본 구성 요소 정규식은 다음과 같은 기본적인 구성 요소로 이루어져 있습니다: 문자 클래스 (Character Classes): [ ] 내부에 문자 집합을 나타내며, [abc]는 'a', 'b', 'c' 중 하나의 문자와 일치합니다. [abc]: [abc]는 'a', 'b', 또는 'c' 중 하나와 일치합니다. 이 패턴은 이 문자 중 하나가..

공log/[JAVA] 2023.10.23

[JAVA] 자바 #4 - 투 포인터

☘️ 투 포인터란? 연속되는 value들을 이용하여 특정 목표에 맞는 값을 찾아주는 알고리즘이다. 연속된 값들을 이용하여 풀어나가는 문제에 한정적으로 사용해야 한다. 주어진 값들의 연속성이 선행조건으로 주어지지 않는 경우에는 투포인터를 사용할 수 없다. 문제에서 주어진 값들을 그대로 활용해야 하는 경우나 정렬을 통하여 연속성을 추가해줄 수 있는 경우에 사용할 수 있는 알고리즘 🌿 투 포인터가 필요한 이유 정수로 이루어진 배열이 있다고 가정 그 정수들중 연속된 몇 개의 정수들의 합이 특정 값이 된다고 하였을 때 그 값을 만들 수 있는 조합은 몇 가지가 될 것이냐라는 문제가 있다고 한다. 만일 투 포인터를 사용하지 않는다면 백트레킹 등을 이용하여 나올 수 있는 모든 케이스에 대해 탐색하는 것이 최선 문제를 ..

공log/[JAVA] 2023.09.25

[JAVA] 자바 #3 - 제네릭

Generic 💡 제네릭 제네릭이란? 클래스 내부에서 사용할 제이터 타입을 외부에서 지정하는 기법 OPP에서 제네익은 타입을 매개변수(파라미터)화 해서 컴파일 시 구체적인 타입이 결정되도록 하여 여러 자료형이 대체되도록 프로그래밍 하는 것 제네릭을 사용하는 코드의 이점 컴파일 시 강한 타입 체크 가능 타입 변환 제거 가능 제네릭 타입 타입을 파라미터로 가지는 클래스와 인터페이스다. 선언 시 클래스 또는 인터페이스 이름 뒤에 “” 다이아몬드 연산자를 사용한다. “”사이에 식별자 기호를 지정함으로써 파라미터화 하여 이것을 마치 메서드가 매개변수를 받아 사용하는 것처럼 사용한다. 제네릭 타입의 사용 제네릭 타입을 사용하지 않은 경우 빈번한 타입 발생으로 프로그램 성능이 저하된다. 제네릭 타입을 사용하면 컴파일..

공log/[JAVA] 2023.09.25

[JAVA] 자바 #2 - 진법 변환하기

1. 10진수를 2진법, 8진법, 16진법으로 변환하기 java.lang.Integer 클래스의 메서드를 이용하여 10진수를 2진수, 8진수, 16진수로 변환할 수 있다. 리턴 타입은 모두 동일하게 String형으로 반환된다. toBinaryString(int i) : 10진수 -> 2진수 toOctalString(int i) : 10진수 -> 8진수 toHexaString(int i) : 10진수 -> 16진수 public class NumberConvert { public static void main(String[] args) { int decimal = 10; String binary = Integer.toBinaryString(decimal); // 10진수 -> 2진수 String octal ..

공log/[JAVA] 2023.09.04

[JAVA] 자바 #1 - 최대 공약수와 최소 공배수

1. 유클리드 호제법(Euclidean Algorithm) 유클리드 호제법은 두 수의 최대공약수를 구하는 알고리즘입니다. 두 수의 최대공약수란, 두 수를 모두 나누어 떨어지는 가장 큰 수를 말합니다. 유클리드 호제법은 다음과 같은 과정으로 이루어집니다. 두 수 중에서 큰 수를 A, 작은 수를 B라고 합니다. A를 B로 나눈 나머지를 R이라고 합니다. 즉, A를 B로 나눈 나머지를 구합니다. R이 0이 되면, B가 두 수의 최대공약수입니다. R이 0이 아니면, 이제 B를 R로 대체합니다. 다시 R을 B로 나누고 나머지를 구합니다. 위 과정을 나머지가 0이 될 때까지 반복합니다. 나머지가 0이 되면, 그 때 B가 최대공약수(GCD)가 됩니다. 💡 유클리드 호제법/알고리즘(Euclidean Algorithm)..

공log/[JAVA] 2023.09.04
728x90