일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- BigDecimal
- 빗썸 API 사용
- pybithumb
- spring
- 변동성 돌파전략
- JavaScript Obejct Notation
- 파이썬 가상환경
- Web Server란
- 리눅스
- JSON 형식
- string format
- beautifulsoup
- Web Service Architecture
- Python
- 리눅스 777
- WAS WebServer 차이
- java
- WAS란
- 프로그래머스 SQL
- 와스 웹서버의 차이
- JSON특징
- 단순 반복 자동화
- 즐겨찾기가 가장 많은 식당 정보 출력하기
- 트레이딩 봇 만들기
- 오라클
- 파이썬 주식
- 프로그래머스
- 프로그래머스 소수
- 파이썬
- 리눅스 rwx
- Today
- Total
목록IT/알고리즘_JAVA (13)
IT 개발자_S

● 조합을 이용한 알고리즘을 구현 할 수 있다. ● 공식 n-1Cr + n-1Cr (n개의 숫자, r 조합의 개수) 조합이란? n개의 숫자 중 r개를 순서와 상관 없이 뽑는 경우를 의미한다. (순열이란 n개의 숫자 중 r개를 순서와 관련하게 뽑는 경우) 예를 들어 [1,2,3] 3개의 숫자가 존재하고 2개를 조합하여, 순서와 상관없이 뽑게 되면 n-1Cr-1 + n-1Cr = 2C1 + 2C2 = 2+1 = 3가지의 경우의수가 된다. (nCr = n!/ r! ) 그렇다면 조합의경우의수를 어떻게 구현해야하는지 Java 소스 구현을 통해 알아보자. 1. 조합의 경우의 수 구하기 재귀호출 방법을 이용한 경우의 수를 구해보자. 예를들어 3C2은 분모 3* 2! = 2 *1! = 3*2*1 , 분자 2 * 1! ..

● 소수 찾기 알고리즘을 만들 수 있다. 문제 https://programmers.co.kr/learn/courses/30/lessons/12921 접근 방법 /* 1.입력값의 소수의 갯수 찾기 2.for 2 , 나누기 0 나뉘면 소수 1을 제외한 1번 3.1과 본인을 제외한 나누기가 되면 소수가 아니지 4.소수만 찾아서 확인하면 소수 */ 2중 for문을 돌렸더니 효율성 체크에서 불합이 되었다. 보완으로 소수를 찾고 소수로만 2중 for문으로 개선을 하였다. 하지만 여전히 효율성측면에서는 불합이 되었다. import java.util.*; class Solution { public int solution(int n) { int answer = 0; System.out.println(n); answer ..
1. 배열이 주어지고 2. 가장 큰 조합의 수로 결정 3. Arrays.sort o1 , o2 -> comparable 비교 import java.util.Arrays; class Solution { public String solution(int[] numbers) { String result = ""; String[] arr = new String[numbers.length]; for (int i = 0; i (o2 + o1).compareTo(o1 + o2)); StringBuilder sb = new StringBuilder(); for (..
1. 배열이 주어지고 2. 배열의 구간을 정해서 정렬후 특정위치의 값을 answer 3. Arrays.sort 배열정리 사용 import java.util.*; class Solution { public int[] solution(int[] array, int[][] commands) { int[] answer = {}; answer = new int [commands.length]; for (int i =0; i < commands.length ; i++){ int start = commands[i][0]; int end = commands[i][1]; int point = commands[i][2]; int length = end-start +1; int [] arr = new int[length];..