일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 코드스테이츠
- 투포인터알고리즘
- vm인스턴스생성
- OOP
- 재귀와반복문
- 백준 11659
- 백준
- GCP
- MySQL
- 알고리즘
- 버블정렬
- 코딩테스트
- 재귀함수
- 프로그래머스
- List.of
- 인텔리제이
- String.valueOf()
- Spring Web MVC
- Spring MVC 구성요소
- 클라우드에서 도커 실행하기
- 자바
- java
- Spring MVC 동작원리
- 스택
- Array.asList
- 싱글톤패턴
- 성능테스트툴
- 구간합구하기
- 11659
- 코드스테이츠 백엔드
- Today
- Total
목록Computer Science (27)
순간을 기록으로
정의 Bubble Sort는 Selection Sort와 유사한 알고리즘으로 서로 인접한 두 원소를 비교하고, 만약 조건에 맞지 않는다면 자리를 교환하여 정렬하는 알고리즘이다. 프로세스 1라운드에서는 1번째 원소와 2번째 원소 비교, 2번째 원소와 3번째 원소 비교, 3번째 원소와 4번째 원소 비교,..., (마지막-1)번째 원소와 마지막 원소를 비교하여 조건에 맞지 않으면 서로 교환한다. 1라운드가 끝나면 가장 큰 원소가 마지막 자리로 가게 되고, 2라운드에서는 정렬된 마지막 원소를 제외하고 1과 같은 로직으로 비교하여 정렬한다. 2라운드가 끝나게 되면 마지막에서 2번째 원소도 정렬이 된 상태다. 소스코드 public int[] bubble_sort(int size, int[] arr) { // rou..
테이블 설계와 기초 테이블에는 다양한 데이터를 저장할 수 있습니다. 이러한 테이블을 효율적으로 관리하려면 데이블을 설계하는데 기준이 있어야합니다. 테이블을 어떠한 기준에 따라 만드는 것을 '테이블 설계'라고 합니다. 아주 간단하게 테이블은 뭘까? 테이블은 간단히말하자면 2차원 표입니다. 엑셀에서 보던 행과 열로된 표와 비슷한 데이터 구조입니다. 하지만 이러한 정의는 테이블이라고 부족합니다. 테이블은 추가적으로 공통적인 요소의 집합이라는 조건이 들어갑니다.즉 관련성 없는 데이터 이것저것이 들어가면 안됩니다. 테이블은 집합이다 테이블은 집합이라고 말할 수 있습니다. 이것이 테이블 설계 제 1규칙입니다. 즉 공통적인 속성을 가진 요소가 모인 것이 테이블 입니다. 예를 들어 채소라는 테이블에는 완두공, 토마토,..
운영체제의 기능 1.프로세서(=cpu) 관리: 어떤 프로그램에 cpu를 줄 것인가? 2.메모리 관리: 한정된 메모리를 어떻게 나누어 사용할 것인가? 3.프로세스 관리: 프로세스의 생성과 삭제, 프로세스에게 자원 할당 및 반환, 프로세스 간 협력 4.파일 관리 5.입출력 관리 운영체제의 물리적 메모리 관리 3가지 방법 1.고정분할(fixed partition) 방식 물리적 메모리를 몇 개의 분할로 미리 나누어 관리하는 방식. 단점 - 메모리에 동시 적재할 수 있는 최대 프로그램 수가 한정되어 있다. - 분할의 크기보다 큰 프로그램은 적재할 수 없어 실행 할 수 없다. - 반대로, 분할의 크기보다 작은 프로그램일 경우 적재 후 남은 메모리인 내부 조각이 발생한다. 내부 조각은 다른 프로그램에서도 사용할 수 ..
수치형 데이터 이외에 문자열 데이터도 연산을 할 수 있습니다. 연산자/함수 연산 데이터베이스 + 문자열 결합 SQL Server || 문자열 결합 Oracle, DB2, PostgreSQL CONCAT 문자열 결합 MySQL 예시 테이블 1.문자열 결합하기 quantity가 사실 INTEGER형 데이터지만 CONCAT 함수를 이용해서 문제없이 결합할 수 있습니다. 2.SUBSTRING 함수 일부 문자열 추출하기 SUBSTRING('20140125001', 1, 4) --> '2014' SUBSTRING('20140125001', 5, 2) --> '01' 3.TRIM 함수 문자열 앞 뒤로 여분의 스페이스가 있을 경우 이를 제거해주는 함수 TRIM('ABC ') --> 'ABC' 4.CHARACTER_LE..
데이터베이스 객체: 테이블 이외에 다양한 데이터를 저장하거나 관리하는 것을 말한다. 예를들면 뷰(View) 테이블: 행과 열로 구성된 표 형식의 데이터 데이터 종류 수치형 데이터: 숫자로 된 데이터 문자열형 데이터: 문자열로된 데이터 날짜시간형 데이터: 날짜와 시각을 나타내는 데이터
안녕하세요. 이번에는 멀티쓰레드 환경에서도 안정적인 다양한 싱글톤 패턴을 구현해보겠습니다. 가장 기본적인 싱글톤 패턴 public class Settings { private static Settings instance; private Settings() { }// private 생성자 public static Settings getInstance() {// static 메소드 if (instance == null) { instance = new Settings(); } return instance; } } 지난 포스팅 때 배운 가장 기본적인 싱글톤 패턴입니다. private 생성자를 이용해 외부에서 객체 생성을 막습니다. 직접 객체 생성대신 메소드를 통해 간접적으로 인스턴스를 제공해주는 static 메..
안녕하세요. 오늘은 싱클톤 패턴에 대해 알아보겠습니다. 싱글톤 패턴 싱글톤 패턴이란 인스턴스를 오직 한 개만 제공하는 클래스를 만드는 패턴입니다. 인스턴스가 무조건 한개여만 됩니다. 예를들어 오버워치를 하고 있는데 마우스 속도가 너무 느린거에요. 셋팅창을 열어 마우스 감도를 90으로 올렸어요. 그런데 이번에는 너무 마우스가 빨라서 속도를 다시 줄이려 마우스 감도를 60으로 줄이려고해요. 이때 만약 셋팅창 인스턴스가 여러개면 어떤 셋팅창에는 마우스 감도가 90이고 어떤 채팅창에는 마우스 감도가 60이라서 문제가 발생하게되죠. 이럴 때 싱글톤 패턴을 이용해서 문제를 해결하게 됩니다. 코드로 살펴보기 우선 App.java와 Settings.java파일을 만듭니다. public class Settings { }..