목록분류 전체보기 (142)
Developer_Neo
AWS EC2 AWS에서 제공하는 클라우드 컴퓨팅 서비스 Amazon Elastic Compute Cloud의 앞 단어인 ECC를 따와, C가 2개라는 의미로 EC2가 되었습니다. 이 서비스를 통해서 아마존이 각 세계에 구축한 데이터 센터의 서버용 컴퓨터들의 자원을 원격으로 사용할 수 있다. 쉽게 말해, 아마존으로 부터 한 대의 컴퓨터를 임대하는 것이다. AWS가 제공하는 URL(Public DNS)를 통해 이 컴퓨터에 접근할 수 있다. EC2 인스턴스 생성하기 https://aws.amazon.com/ 클라우드 서비스 | 클라우드 컴퓨팅 솔루션| Amazon Web Services AWS IoT에 대한 새로운 소식 산업, 소비자, 상업 및 자동차 워크로드에 대한 IoT 데이터를 수집, 저장 및 분석하는..
평상시 DB 설계할 때 mysql과 workbench만 사용했었다. 아직 백엔드 개발의 준비과정이자 앱을 개발하기 위한 것으로 배우고 있었는데, GUI로 diagram을 확인하면서 설계를 할 수 있는 툴인 db 설계 자체도를 화면에 그리는 것이 마음에 들었다. 이런 것을 보고 ERD (Entity Relationship Diagram)이라고 한다고 한다. ERD란 무엇인지 설명하자면 개체-관계 다이어그램(Entity-Relationship Diagram)의 약자로, 데이터 설계 기법 중 하나인 개체-관계 모델링(Entity-Relationship Modelling)의 프로세스 산출물을 뜻한다. 사용법을 익히는 과정이 필요없이 처음 사용자도 이 툴을 쉽게 익힐 수 있도록 예시가 잘 되어 있다. 그냥 예시 ..
핵심 개념 키워드 서버와 서비스 서버란로그램(server program) 또는 장치(device)를 의미하는 것으로 **서비스를 제공**합니다. []() : 클라이언트에게 네트워크를 통해 정보나 서비스를 제공하는 컴퓨터 시스템으로 컴퓨터 프 서버의 역할 요청을 받으면 처리하여 응답하는 존재 어떤 서비스를 제공할지 알아야 하므로 요청을 통해서 알아낸다. 서비스란: 예로써 설명을 하면 강사가 서버라고 하면 강사가 제공하는 강의나 pdf파일등이 서비스라고 할 수 있습니다. : 클라이언트가 요청을 하면 서버에서 어떤 방식으로 수행해야 하는지를 응답으로써 클라이언트에게 주는 것이다. extra 서버는 여러가지 종류로 나뉘어지는데 웹 서버와 데이터 베이스 서버 중간에 위치하는 애플리케이션 서버, 일종의 슈퍼 컴퓨터..
www.acmicpc.net/problem/2751 2751번: 수 정렬하기 2 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. www.acmicpc.net 문제 N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오. 입력 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. 출력 첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다. 내가 생각했던 것은 아 정렬이니..
앞서 있었던 퀵정렬은 피벗 값에 따라서 편향되게 분할 될 가능성이 있다는 것이다 그래서 최악의 경우 O(N^2)의 시간 복잡도를 가진다. 하지만 지금 배울 병합정렬은 편향되게 분할 될 가능성이 없다. 정확히 반 반씩 나누기 때문에 최악의 경우에도 O(N*logN)의 시간복잡도를 보장한다. Divdie and Conquer방식이라고도 배우는데 먼저 기존에 있는 배열들을 작게 작게 각각 하나씩 가질때 까지 나눈다는 것이다 그리고 merge할때 정렬해가면서 합친다는 것이다. 정렬을 할때 다른 배열을 생성하여 그 배열에 정렬해서 넣는것이다 방법은 나뉘어진 배열 2개에 대해 합치게 되는데 이때 각각 배열의 첫번째 인덱스의 값들을 비교해서 작은 것부터 생성한 배열에 넣는것이다. 위의 그림처럼 말이다 코드를 살펴보자..
문제 N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오. 입력 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. 출력 첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); int i,j,min,temp; int index=0; int []arr=new int[1001];..
퀵 정렬(Quick Sort) - 선택, 버블, 삽입정렬 알고리즘은 Worst case인 경우에 모두 시간 복잡도를 O(N^2)을 가지게 되는데 보통 데이터 갯수가 무수히 많다고 가정하는 상황에서는 사용하기 어려운 정렬들이다. - 퀵 정렬은 분할 정복 알고리즘으로 특정한 배열이 있을때 그 배열을 반복적으로 분할 배열의 원소들을 나누어서 계산한다. 빠른 알고리즘이다. - 사용 방법 특정한 값을 기준으로 큰 숫자 집합과 작은 숫자 집합으로 나눈다. Pivot이라는 명칭으로 원소를 정하게 되는데 이 Pivot을 기준으로 비교해서 Pivot이 가운데에 오게 왼쪽 오른쪽으로 나누게 되는 것이다. 더 좋은 방법은 배열을 정렬할때 Pivot을 처음 중간 끝을 기준으로 3개를 골라서 이 3개를 비교해서 중간값을 이용해..
삽입 정렬(Insertion Sort) - 선택, 버블 정렬은 무조건 위치를 바꾸지만 이것은 필요할때만 위치를 바꾼다 - 즉 삽입정렬은 이미 정렬되어있다고 가정하는데 정렬할때의 좌측은 이미 정렬이 되어있어 내가 선택한 값과 비교를 통해 알맞은 위치에 삽입을 한다는 것이다. (비교하는 꼴은 내가 선택한 값과 정렬이 되어있는 것의 오른쪽 부터 비교해 값이 더 크다면 삽입할위치를 계속찾는것이다. 이때 내가 선택한 값에 정렬이 되어있던 것의 작은 값을 차례대로 넣는 과정을 거친다.) public class Insertion_Sort { public static void sort(int []a){ for(int i=1;i=0&&target