| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
| 31 |
- dfs
- backjoon
- 언더라이터
- 백준
- 다이나믹 프로그래밍
- 자바
- 프로그래머스
- CKLU
- 삼성sw문제
- 개발
- 멀티스레드
- BFS
- 백준 알고리즘
- 데이터베이스
- IT
- 알고리즘
- 익명객체
- 삼성SW테스트
- 안드로이드
- 너비탐색
- 금융IT
- Android
- 네트워크
- Java
- dp
- 익명클래스
- 모바일
- 조합
- 현대오토에버 코딩테스트
- 재귀함수
- Today
- Total
목록전체 글 (237)
Limky 삽질블로그
버블정렬 (Bubble Sort) 버블정렬에 대해서 알아보겠습니다. 버블 정렬은 자기자신 뒤에 오는 요소와 끊임없이 비교하면서, 오름차순일 경우 가장 큰 수가 뒤에서부터 정렬되는 정렬알고리즘입니다. 또한 마지막 Sorting시에는 첫번째 요소를 제외하고 모두 정렬됐기 때문에 자연스럽게 첫번째정렬됩니다. 그림을 보면서 이해해 봅시다. 우선 5와 3을 비교하고 5가 더 크기 때문에 교환합니다.다음 버블인 5와 4를 비교하고 5가 더 크기 때문에 교환합니다. 이제 5와 1을 비교하고 5가 더 크기 때문에 교환한 후 정렬 1회전을 종료합니다. 5가 가장 큰 수였기 때문에 차례대로 진행되는 모든 비교에서 이기고 결국 제일 큰 숫자의 자리인 끝의 자리를 차지하게 됩니다. 다음 2회전을 보겠습니다.3과 4를 비교하고..
BackJoon # 11057 - 오르막 수 (Ascending Number) https://www.acmicpc.net/problem/11057 대표적인 DP문제입니다. DP[N][L] 을 N자리수의 L이라는 숫자가 올 경우, 오르막 수 조건에 해당하는 경우의 수 라고 하겠습니다. DP[3][7] 이라고 하면 _ _ 7 을 뜻합니다. 그렇 다면 2번째 자리는 어떤 숫자가 올 수 있을까요?오르막 수 규칙에 의하면 0 ~ 7 이라는 숫자가 올 수 있습니다. 즉 N자리 L 숫자가 온다면, N-1자리 숫자는 0 ~ L 범위의 숫자가 올 수 있는 것입니다. 지금은 하나의 경우인 즉 L숫자를 가정했지만, 모든 경우의 수를 고려해야 하기 때문에 시그마로 식을 세워야 합니다. 결국 DP[N][L] = DP[N-1][..
BackJoon # 2156 - 포도주 시식 (Wine Tasting) https://www.acmicpc.net/problem/2156 대표적인 DP문제입니다. 연속으로 3번 마시지 않으면서 주어진 N개 포도주를 어찌어찌 마신다면, 얼만큼 마실 수 있느냐 그 최고 값을 찾아라 입니다. 어찌어찌 마신다는 것은 우리가 어떻게 마셔라 라고 마음대로 정해줄 수 있다는 뜻입니다. 3번 연속으로 마실 수 없다는 것을 따져보면, 0번 연속 마실 수 있는 경우, 1번 연속 마실 수 있는 경우 , 2번 연속 마실 수 있는 경우가 있습니다. 자 그럼 점화식을 짜봅시다.ㅎㅎㅎㅎ dp[n] = 포도주 n개가 주어졌을 때, 가장 많이 마실 수 있는 양 p[n] = n번째 포도주의 양 0번 연속 마실 수 있는 경우 n번째 포도..
선택정렬 (Select Sort) 선택정렬에 알아보겠습니다. 선택정렬은 정렬되지 않은 영역에서 가장 작은 값을 찾고, 정렬 대상 요소와 교환하는 방식이다. 간단히 제일 작은 요소부터 앞에서 부터 차례대로 줄을 서는 것이다. 그림으로 설명해보자. 3회전을 하는 과정이다. 우선 회색으로 칠해져 있는 것은 아직 정렬되지 않은 영역이다.정렬되지 않은 영역 첫번째 부터 차근차근 정렬을 하면 된다. 정렬되지 않은 요소 중 첫번째 요소인 5와 나머지 요소를 비교하여 가장 작은 요소의 index 위치를 찾는다. 찾은 후 교환해주면 된다. 위 원리를 코드로 나타내면 다음과 같다. package Sort; import java.util.Arrays; public class SelectSort { public static ..
이상감지시스템 FDS (Fraud Detection System)란? 저도 금융IT를 공부하면서, FDS를 알게 되었고, 이번 시간은 FDS가 무엇인지 간략하게 알아보겠습니다. 영어 그대로 이상 감지 시스템, 즉, 사기 금융거래 방지 시스템 정도로 생각하면 됩니다. 예를 들어 사기 금융 거래나, 이상 금융 거래에 관한 Data나 흐름을 빅데이터로 축적하고 이를 분석하여, 수백만건의 거래를 비교해 사기금융거래와 같은 유사한 거래가 발생할 경우 이를 사전에 차단하거나, 캐치하는 보안 시스템입니다. 금융 거래 보안 시스템 입니다. FDS가 갑자기 화두가 된 이유가 무엇일까요?? 사실 갑자기 화두가 된 것이 아닙니다. 예견된 보안시스템이라고 저는 생각합니다. 금융서비스를 이용할 수 있는 단말과 편리함, 용이성이..
삽입정렬(Insert Sort) 삽입정렬은 정렬한 부분과 정렬하지 않은 부분을 나눈 후 정렬할 대상인 대상을 정렬하지 않은 부분에서 차례대로 꺼내 정렬한 부분의 요소들과 차례대로 비교를 하면서 자신이 삽입될 인덱스를 찾는다. 이 과정에서 정렬된 부분의 요소들이 현대 정렬대상보다 클 경우 한칸씩 뒤로 밀리면서 정렬대상이 들어갈 공간을 마련해준다. (오름차순인 경우) 자 말로하니까 어렵다. 한 단계씩 그림으로 설명해보자. 파란색은 이미 정렬된 영역이라고 하자. 빨간영역은 정렬되지 않은 영역이다.삽입정렬은 기본적으로 0번째 요소는 정렬된 것이라 가정하고 시작한다. 우선 1회전 과정을 살펴보자. 0번째 요소는 정렬됐다고 가정했으니, 1번째 요소 값이 정렬할 대상이다. Temp에 1번째 요소 값인 2를 임시저장한..
데이터 베이스 키(Key)의 개념 및 종류 키(Key)는 데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 다른 튜플들과 구별할 수 있는 유일한 기준이 되는 Attribute(속성)입니다. *튜플 : 릴레이션을 구성하는 각각의 행, 속성의 모임으로 구성된다. 파일 구조에서는 레코드와 같은 개념, 튜플의 수 = 카디널리티(Cardinality) = 기수 = 대응수 릴레이션학번 주민번호 성명 성별 1001 810429-1231457 김형석 남 1002 800504-1546781 김현천 남 1002 811216-2547842 류기선 여 1003 910322-1233445 홍영선 여 릴레이션학번 과목명 1001 영어 1001 전산 1002 영어 1003 수학 1004 영어 1004 전산 1. 후..
BackJoon # 5427- 불(Fire) https://www.acmicpc.net/problem/5427 package BackJoon; import java.awt.Point; import java.util.ArrayList; import java.util.LinkedList; import java.util.Queue; import java.util.Scanner; public class Fire { static ArrayList arrays; public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); arrays = new ArrayList(); char [][]temp; fo..