본문 바로가기

전체 글222

[JAVA] 소수 판별 알고리즘 Summary1. 어떤 수가 소수인지 판별할 수 있는 함수를 작성할 수 있다. 소수 판별 알고리즘[소수?]1인 아닌 수 중에서 자기 자신과 1 이외의 양의 약수를 가지지 않는 자연수 Ex) 5는 소수이다.1) 1이 아니면서2) 5의 약수는 1과 5이다. (1과 자기 자신만 약수로 가진다.)Ex) 8은 소수가 아니다.1) 1이 아니면서2) 8의 약수는 1,2,4,8 이다. (1과 자기 자신인 8 이외에도 2,4가 약수로 있다.)[소수 판별 알고리즘]1) 1 이라면 무조건 소수가 아니다.2) 2~(7/2) 값까지 모두 나눠봤을 때 모두 나머지가 0이 아니면 된다. // 소수 판별 logic // // 7이 소수인지 아닌지 판별하려면, 2~(7/2) 값까지 모두 나눴을 때 나머지가 0이 아니면 된다. .. 2024. 11. 30.
[JAVA] 유클리드 호제법 (최대공약수, 최소공배수) Summary1. 최대공약수와 최소공배수를 유클리드 호제법을 이용하여 구현한다.이론[1. 최대공약수 - GCD(Greatest Common Divisor]두 수가 공통으로 가지고 있는 약수 중 가장 큰 수= 최대값 / 공통으로 가지고 있는 약수 중에서 [1-1. N이 작은 경우][로직 예시 - N이 작은 경우]12 18 의 최대공약수 구하기1) 1부터 12 18 중 최솟값 까지 for문을 돌리면서 12 18 과 나누어 떨어지는지 체크 1-1) 만약 두 수 모두 나누어 떨어진다면 최댓값을 저장한다. public static int maxCommonDivision(int n, int m) { int ans = 0; for(int i=1; i 하지만, 두 수가 1835813035.. 2024. 11. 30.
[JAVA] 문자, 문자열 String 기초 문법‘A’의 아스키코드 값 65, ‘a’의 아스키코드 값 97문자열의 제거, 순서 바꾸기(문자열의 형태를 바꾸는 유형) 등은 str.substing()을 이용하면 된다.길이문자열 : length() 배열 : length 리스트 : size()모든 문자열을 대문자로 바꾸기str.toUpperCase()문자열 부분 추출 (String 문자열 상태에서만 사용 가능)str.substring(startIndex, endIndex)문자열 대체하기str = str.replace("abc", "def") // abc를 def로 바꾼다.앞 뒤 공백 제거 (Ex. " Hello " -> "Hello")str.trim()공백을 기준으로 문자열 나누기(split)String[] words = st.. 2024. 11. 29.
[KB국민은행] 현직자 멘토링 보호되어 있는 글 입니다. 2024. 11. 28.
[JAVA] 2차원 배열 + dx/dy 테크닉 기본 문법- 기본 문법은 1차원 배열과 유사하다.dx, dy 테크닉dx, dy 테크닉은 어떤 2차원 좌표에서 이동을 할 때 간단하게 사용할 수 있는 알고리즘 기법이다. 예를 들어, 아래 그림처럼 4*5로 된 격자에 빨간 점에서 상,하,좌,우 로 이동하려면 어떻게 해야 할까?if-else 문을 써서 이동 시켜도 되겠지만, 더 간단한 방법이 있다. #출발 지점 설정startR = 0;startC = 0; # 이동 방향dir_num = 0# 방향을 저장하는 순서는 문제에 따라 사용자가 지정 (현재는 우, 상, 좌, 하로 이동)# 0 1 2 3dc = [1, 0, -1, 0]dr = [0, -1, 0, 1]# 조건에 따라 이동nextR = startR + dr[dir_num];nextC = sta.. 2024. 11. 27.