전체 글(87)
-
Algorithm - 1주차
1. 삽입정렬 / 머지정렬 / 퀵정렬을 구현하고, 아래의 데이터를 만들어서 시간 비교를 해주세요 1. 1~1000만까지 순서대로 숫자가 저장된 배열 public class algorithm1 { private static void insertion_sort(int[] a, int size) { for(int i = 1; i = 0 && target < a[j]) { // 타겟이 이전 원소보다 크기 전 까지 반복 a[j + 1] = a[j];// 이전 원소를 한칸씩 뒤로 j--; } //위 반복문이 끝났을 때 j인덱스보다 타겟..
2022.10.14 -
DataBase - Relation Data Model
관계 데이터모델 가장 중요한 용어인 릴레이션에 대한 이해가 필요하다 릴레이션은 행과 열로 구성된 테이블을 의미하는데 relation 단어 자체는 관계를 의미하지만 뒤에 배울 relationship을 관계라고 하기 때문에 번역의 충돌을 피하기 위하여 릴레이션이라고 부른다. 하지만 다른 용어에 포함된 relation data model, relation database 등은 관게 데이터 모델, 관계 데이터베이스라고 한다. 도서번호 행의 원소 = {1, 2, 3, 4, 5} 도서이름 행의 원소 = {축구의 역사, 축구아는 여자, 축구의 이해, 골프바이블, 피겨 교본} 출판사 행의 원소 = {굿스포츠, 나무수, 대한미디어, 대한미디어, 굿스포츠} 가격 = {7000, 13000, 22000, 35000, 800..
2022.10.12 -
JAVA - 이벤트처리
이벤트 기반 프로그래밍 이벤트의 발생에 의해. 프로그램 흐름이 결정되는 방식 이벤트가 발생하면 이벤트를 처리하는 루틴(이벤트 리스너) 실행 실행될 코드는 이벤트의 발생에 의해 전적으로 결정 반대되는 개념 : 배치 실행 프로그램 개발자가 프로그램의 흐름을 결정하는 방식 예시로 C언어 학생 정보 관리시스템이 있다 이벤트 종류 사용자의 입력 : 마우스 드래그, 마우스 클릭, 키보드 누름 센서로부터의 입력, 네트워크로부터 데이터 송수신 다른 응용프로그램이나 다른 스레드로부터의 메세지 이벤트 처리 과정 이벤트 발생 예 : 마우스 클릭, 키보드 입력 이벤트 객체 생성 현재 발생한 이벤트에 대한 정보를 가진 객체 응용프로그램에 작성된 이벤트 리스너 찾기 이벤트 리스너 실행 리스너에 이벤트 객체 전달 리스너 코드 실행..
2022.10.11 -
DataBase System
데이터베이스는 조직에 필요한 정보를 얻기 위해 논리적으로 연관된 데이터를 모아 구조적으로 통합해 놓은 것 데이터 : 관찰의 결과로 나타난 정량적 혹은 정성적인 실제 값 정보 : 데이터에 의미를 부여한 것 지식 : 사물이나 현상에 대한 이해 데이터베이스 시스템은 데이터의 검색과 변경 작업을 주로 수행한다. 여기서 변경이란 시간에 따라 변하는 데이터 값을 데이터베이스에 반영하기 위해 수행하는 삽입, 삭제, 수정 등의 작업을 말한다. 이러한 검색과 변경의 빈도에 따라 시스템 구축의 난이도가 결정된다. 검색과 변경 빈도에 따른 데이터베이스 유형을 알아보자 유형 검색빈도 변경 빈도 데이터베이스 예 특징 유형1 적다 적다 공룡 데이터베이스 - 검색이 많지 않아 데이터베이스를 구축할 필요가 없음 -보존가치가 있는 경..
2022.10.06 -
JAVA - Swing/AWT/GUI
GUI란? Graphical user interface 그래픽 사용자 인터페이스 JAVA에서도 GUI를? Python의 tkinter 라이브러리와 같이 JAVA 또한 이러한 기능을 지원한다 기본적으로 자바 초창기에 배포된 AWT라는 패키지가 있지만 최근에는 사용하지 않는다 우리는 AWT의 모든 기능과 추가적으로 화려하고 풍부한 고급 컴포넌트를 지원하는 Swing 패키지를 다뤄볼 예정이다. Swing 패키지 스윙 컴포넌트는 AWT와 달리 운영체제의 도움을 받지 않고 직접 그리기에 운영체제에 부담을 주지 않는다 스윙 컴포넌트의 종류는 이와 같이 다양한 종류가 있다. 스윙을 응용한 프로그램은 위의 컴포넌트를 이용하여 레고 블록을 조립하듯이 작성하는데 먼저 알고 넘어가야하는 개념들을 살펴보자 컨테이너 다른 컴포..
2022.10.05 -
시간복잡도에 관한 구체적이고 쉬운 이야기
Time Complexity 시간 복잡도 시간복잡도란? 시간복잡도는 문제 해결을 위한 알고리즘의 로직을 코드로 구현할 때 '입력값의 변화에 따라 연산이 실행될 경우, 연산 횟수에 비례해 시간이 얼마만큼 소요되는가'를 나타내는 것이며 Big-O 표기법을 사용해 나타낸다 2가지 코드가 있다. int n, sum = 0; scanf("%d", &n); for(int i=1;i
2022.09.30