몰입하며 나아가는 개발이란

Algorithm, Data Structure 4

시간복잡도, Time Complexity, Big-O

Time Complexity(시간 복잡도)를 표기하는 방법 Big-O → 상한점근 Big-Ω → 하한점근 Big-θ → 평균 시간 복잡도를 표기하는 3가지 방법이 있으며, 위부터 차례대로 최악의 경우, 최선의 경우, 평균의 경우에 대하여 나타내는 방법이다. 그중에서 Big-O 표기법은 최악의 경우를 고려하는 표기법 이므로 “이 정도 시간까지 걸릴 수 있다”를 명시적으로 보여주기에 그에 맞는 대응을 고려할 수 있게 해준다. Big-O Constant complexity - O(1) “일정한 복잡도”라고 하며, 입력 값 이 증가하더라도 시간이 늘어나지 않는다. 즉, 입력 값의 크기가 아무리 커져도 즉시 출력 값을 얻어낼 수 있다. function constantComplexity(arr, index){ re..

JSON이란?

JSON이란? Java Script Object Notation 의 약자이며, 직역하면 자바스크맆트 객체 표기법 이다. JSON 표기법은 사람과 기계 모두 이해하기 쉬우며 용량이 작다는 장점이 있다. JSON의 구조는 Array(배열)와 흡사하며, 2차원 배열 이라고 이해하면 쉽게 이해할 수 있다. Array[Number][KEY] 형태로 보면 "몇번째 어떤키값"으로 데이터를 찾을 수 있어 상당히 직관적인것이 장점이다. 구두로 말을 뱉음과 동시에 어떠한 데이터인지 명확하게 알 수있다. "몇번째에 있는 어떤 데이터를 찾고 싶은가?" JSON 작성방식 []괄호 안에 {}괄호가 하나의 객체(row)이며, 하나의 객체(row)는 KEY와 VALUE를 PAIR를 이루어 필드값으로 존재 한다. 쉽게 말해 2차원 배..

JAVA에서 XML문서 읽기

이전 글에서 XML의 개념을 정리하고, JavaScript에서 XMLHttpRequest 객체와 DOMParser 객체를 알아 보았다. JAVA에서도 XML파일을 FileReader로 읽어들여 DOMParser와 같이 접근하는 방법이 있다. 아래의 코드를 확인해보자. package main; import java.io.FileReader; import javax.xml.parsers.DocumentBuilderFactory; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.NodeList; import org.xml.sax.InputSource; public class mainClass { public static v..

XML 이란? (JS/XMLHttpRequest 와 DOMParser 객체)

XML 이란? XML은 eXtensible Mark-up Language 의 약자로써 직역을 하면 확장가능한 마크업 언어로 해석할 수 있으며, html과 거의 흡사하다. 다만 사용목적이 html과는 다르다. W3C에서 정보를 쉽게 교환하기 위하여 만든 포멧이며, 데이터를 설명하는 tag를 사용자 마음데로 정의가 가능하다. 다른 마크업언어를 생성할 수도 있으며, 텍스트로 구성되어있기 때문에 하드웨어나 소프트웨어에 제한을 받지 않는다. 태그자체가 확장성이 있기 때문에 어떤분야의 데이터로 정확하게 기술 할 수 있다는 장점이 있다. 즉, DB를 통하지 않고 xml 문서를 통해 택스트만으로 쉽게 정보 교환이되는것이 장점이다. XML 파일 구조 아래와 같이 HTML과 동일하게 tag를 사용할 수 있지만 예약어가 존..