CS

CS/자료구조와 알고리즘

[CS/자료구조와 알고리즘] 알고리즘 개념

1.정렬(Sort) :데이터들이 주어졌을 때 이를 정해진 순서대로 나열하는 것 1.1.버블 정렬(Bubble Sort) :두 인접한 데이터를 비교해서 앞에 있는 데이터가 뒤에 있는 데이터보다 크면, 자리를 바꾸는 정렬 알고리즘 1.2.선택정렬(Selection Sort) ①주어진 데이터 중 최소값을 찾는다. ②해당 최소값을 데이터 맨 앞에 위치한 값과 교체한다. ③맨 앞의 위치를 뺀 나머지 데이터를 동일한 방법으로 반복한다. 1.3.삽입정렬(Insertion Sort) ①두 번째 인덱스부터 시작 ②해당 인덱스(key값) 앞에 있는 데이터(B)부터 비교해서 key값이 더 작으면, B값을 뒤 인덱스로 복사 ③이를 key값이 더 큰 데이터를 만날 때 까지 반복, 그리고 큰 데이터를 만난 위치 바로 뒤에 key..

CS/자료구조와 알고리즘

[CS/자료구조와 알고리즘] 자료구조 개념

1.해쉬테이블 1.2.개념 해쉬 함수(Hash Function)을 통해 키(Key)에 데이터(Value)를 매핑할 수 있는 데이터 구조. 키를 통해 데이터가 저장되어 있는 주소를 알 수 있으므로, 저장 및 탐색속도가 빠름. 1.3.장/단점 및 주요용도 장점 단점 주요용도 ●데이터 저장/읽기 속도가 빠르다(검색 속도가 빠르다) ●키에 대한 데이터가 있는지(중복)확인이 쉽다. ●저장공간이 많이 필요하다. ●충돌발생 가능성이 있다. 별도 자료구조가 필요하다. ●검색이 많이 필요한 경우 ●저장, 삭제, 읽기가 빈번한 경우 ●캐쉬 구현시(중복확인이 쉽다) 2.트리 2.1.개념 Node와 Branch를 이용해서 순회를 막는 데이터 구조 이진 트리(Binary Tree) 형태의 구조로 탐색(검색) 알고리즘 구현을 위..

CS/기타

[CS/기타]Jar(Java Archive)와 War(Web Application Archive)

1.개념 Jar와 War 모두 Java의 jar옵션을 이용해 생성한 압축 파일. 애플리케이션을 쉽게 배포하고 동작시킬 수 있도록 관련 파일을 패키징. 2.Jar(Java Archive) JAVA 어플리케이션이 작동할 수 있도록 자바 프로젝트를 압축한 파일 JRE(JAVA Runtime Environment)만 있어도 실행가능 Class(JAVA리소스, 속성파일), 라이브러리 파일 포함 3.War(Web Application Archive) Servlet/Jsp 컨테이너에 배칠할 수 있는 웹 어플리케이션 압축파일 포맷 사전 정의된 구조(WEB-INF, META-INF)를 살용하며 웹서버 혹은 웹 컨테이너(WAS)가 필요하다 JAR 파일의 일종으로 웹 어플리케이션 전체를 패키징하기 위한 JAR파일이다. 출처..

CS/기타

[CS/기타] 빌드관리 툴 Maven과 Gradle

1.빌드관리 툴 프로젝트에서 필요한 xml,properties,jar 파일들을 자동으로 인식하여 빌드해주는 도구(대표적 기능) 소스 코드를 컴파일, 테스트, 정적분석 등을 하여 실행 가능한 앱으로 빌드해줌 프로젝트 정보 관리, 테스트 빌드, 배포 등의 작업을 진행해줌 외부 라이브러리를 참조하여 자동으로 다운로드 및 업데이트의 관리해줌(우리가 쓰는 이유) 자바의 대표 빌드도구:Ant, Maven, Gradle 2.Maven 프로젝트의 외부 라이브러리를 pom.xml 파일로 명시하여 편리하게 관리 및 참조 참조한 외부 라이브러리에 연관된 다른 라이브러리도 자동으로 관리 3.Gradle Maven에 비해 더 빠른 처리속도 Maven에 비해 더 간결한 구성 Groovy 스크립트를 활용한 빌드 관리 도구 안드로이..

CS/기타

[CS/UML] UML 다이어그램

UML 1.클래스 다이어그램 1-1. 클래스, 속성(Attribute), 오퍼레이션(operation) 1-2.속성 표기법 1-3.오퍼레이션 표기법 1-4.연관(association) 1-5.연관 탐색(navigation) 1-6.의존(dependency) 1-8.인터페이스, 추상클래스 1-9.Aggregation, Composition 출처:유튜브 / 최범균(UML 기초, https://www.youtube.com/watch?v=HG0dwNnTsII&t=621s) https://www.nextree.co.kr/p6753/ UML: 클래스 다이어그램과 소스코드 매핑 불과 몇 년 되지 않은 학생 시절... 처음으로 UML을 접했고, UML의 기초적인 그리는 법과 사용법을 배웠습니다. 개인적으로 쉽지 않은 ..

CS/기타

[CS/디자인패턴] 디자인패턴 개념 개괄

1.GoF 디자인 패턴 분류 2.생성패턴 :객체의 생성과 관련된 패턴이다. 객체의 인스턴스 과정을 추상화하는 방법이다. 객체의 생성과 참조 과정을 캡슐화하여 객체가 생성되거나 변경되어도 프로그램 구조에 영향을 받지 않도록 하여 프로그램에 유연성을 더해준다. 생성 클래스 패턴은 객체를 생성하는 일부를 서브 클래스가 담당하도록 하며, 생성 객체 패턴은 객체 생성을 다른 객체에게 위임한다. 2-1. 팩토리 메소드(Factory Method) :객체 생성에 대한 인터페이스와 구현을 분리한다. 생성과 구현을 분리함으로써 생성할 클래스를 유연하게 생성 및 관리 할 수 있다. 인터페이스 부분과 구현부분을 따로 디렉토리로 묶어 개발할 수 있다. 새로운 클래스의 구현이 쉽다. 2-2. Abstract Factory : ..

CS/HTTP

[HTTP]2장. 간단한 프로토콜 HTTP

출처:그림으로 배우는 HTTP & Network(저자:우에노 센 / 옮긴이:이병억 / 출판사:영진닷컴)

각시탈코더
'CS' 카테고리의 글 목록