일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 알고리즘
- java
- 카카오코테
- 공부정리
- heap
- 카카오기출
- 백준 1000번
- 개발상식
- 객체프로그래밍
- 힙정렬자바
- 카카오1차
- heap정렬
- 프렌즈4블록java
- 코테준비
- Java heap
- 자바
- 카카오코딩테스트
- 백준 1924번
- 프로그래머스
- 백준
- 객체프로그래밍이란
- 백준 1924번 java
- java method
- 백준 1000번 java
- 자바문자열
- 자료구조 트리
- 프렌즈4블록
- 코딩테스트기출
- 문자열포맷
- 자료구조힙
- Today
- Total
목록개발 (27)
일단 시작해보는 블로그
Hashset은 중복을 허용하지 않고 순서가 없다. 만약 중복을 허용하지 않는 순서가 있는 집합을 만들고 싶다면 LinkedHashSet을 사용하면 된다. package hash; import java.util.HashSet; import java.util.Iterator; public class HashSet_Union_Inter { public static void main(String[] args) { HashSet SetA = new HashSet(); // [1, 2, 3, 4, 5] HashSet SetB = new HashSet(); // [1, 2, 4, 5, 6] HashSet SetUnion = new HashSet(); // [1, 2, 3, 4, 5, 6] HashSet SetInt..
문자열로 정의한 정규표현식은 사용되기 전에 반드시 Pattern 클래스의 인스턴스로 컴파일 되어야한다. 컴파일된 패턴은 Matcher 객체를 만드는데 사용되며, Matcher 객체는 임의의 입력 문자열이 패턴에 부합되는지 여부를 판가름하는 기능을 담당한다. 또한, Pattern객체들은 비상태 유지 객체들이기 때문에 여러개의 Matcher 객체들이 공유할 수 있다. 목표> String str = "나는 123456788입니다."; 다음 문자열에서 숫자만 추출하고 싶어요! 1. Pattern p = Pattern.compile("([0-9])+"); 여기서 [0-9]라고 하면 숫자 한글자씩 나온다. ([]이거 자체가 범위를 쓸 수 있지만 한 글자를 의미하는 것이라서 그렇다.) 원하는 답(123456788)을..
정규표현식은 특정한 조건으로 문자를 검색하거나 바꿀 때 사용된다. 정규 표현식의 예 예를들어 다음과 같은 문자열이 있다고 보면, String str = "안녕하세요. 저는 12345567입니다."; //너무 대충썼.. 이 문자열에서 숫자만 남기고 다 지우고 싶을 때 다음과 같은 식을 쓰면 된다. String result = str.replaceAll("[^0-9]", ""); 여기서 [^0-9]가 정규표현식인데, [] -> 하나의 문자를 의미한다고 보면 편한데, [0-9]라면 0-9숫자, [a-z]는 소문자, [A-Z]는 대문자, [a-zA-Z]는 대소문자 중, 하나 이렇게 생각하면 된다. 0-9 -> 위에서 설명했듯, 범위이다. ^ -> 위의 표현식[^0-9]은 괄호 안에 ^ 표시가 있는데, 이는 반대..
schema 디자인 할 때 고려사항 - 사용자 요구(User Requirement)에 따라 schema를 디자인한다. - 객체들을 함께 사용한다면 한 Document에 합쳐서 사용한다. (예: 게시물-덧글과의 관계) 그렇지 않으면 따로 사용한다. (그리고 join을 사용하지 않는걸 확실히 해둔다.) - 읽을 때 join하는게 아니라 데이터를 작성할 때 join한다. RDMS에서 테이블로 구분되어져 사용되는 구조가 NoSQL에서는 모든걸 하나의 Document에 넣는다. RDMS는 NoSQL는 { _id: POST_ID, title: POST_TITLE, content: POST_CONTENT, username: POST_WRITER, tags: [ TAG1, TAG2, TAG3 ], time: POST_..
C++로 작성된 오픈소스 문서지향(Document-Oriented)적 Cross-platform 데이터베이스이며, 뛰어난 확장성과 성능을 자랑한다. 현존하는 NoSQL 데이터 베이스 중 인지도 1위를 유지하고 있음. NoSQL? -> SQL이 no가 아니라, Not Only SQL이다. 기존의 RDMS의 한계를 극복하기 위해 만들어진 새로운 형태의 데이터저장소이다. 관계형 DB가 아니므로, RDMS처럼 고정된 스키마 및 JOIN이 존재하지 않는다. Document? -> RDMS에서의 record와 비슷한 개념. 이의 데이터 구조는 한개이상의 key-value pair으로 이뤄져 있다. 예를 들면 다음과 같다. { "_id" : ObjectId("5099803df3f4948bd2f98391"), "use..
REST는 Representational State Transfer의 약자로서, 월드와이드웹(www)와 같은 하이퍼 미디어 시스템을 위한 소프트웨어 아키텍쳐 중 하나의 형식이다. REST 서버는 클라이언트로 하여금 HTTP 프로토콜을 사용해 서버의 정보에 접근 및 변경을 가능케 한다. 여기서 정보는 text, xml, json 등 형식으로 제공되지만 요즘 트렌드는 json이다.!.! HTTP메소드 HTTP/1.1에서 제공되는 메소드는 여러개가 있지만 REST 기반 아키텍쳐에서 자주 사용되는 4가지 메소드는 다음과 같다. 1. GET : 조회 2. PUT : 생성 및 업데이트 3. DELETE : 제거 4. POST : 생성 다음은 user.json을 기반으로 restful api를 작성한 router.j..
모듈 : 기본적으로 제공하는 기능 뿐 아니라 추가적으로 기능을 사용할 때 가져다 쓸 수 있는 라이브러리 1) 내장 모듈 : node.js에서 제공하는 모듈 2) 확장 모듈 : node.js 사용자들이 만들어낸 모듈 미들웨어 : 구조 내에서 중간 처리를 위한 함수(함수들의 꾸러미가 모듈) 1) express 프레임워크에서 사용할 수 있는 중간 처리 목적의 소프트웨어 : 기본적인 express 구조 내에서 처리 목적으로 사용 2) 요청에 대한 응답을 완수하기 전까지 중간중간 다양한 일을 처리할 수 있음. 3) 미들웨어 함수 생명주기 : request - response 응답을 주기로 종료 4) 미들웨어 함수 우선순위 : 먼저 로드되는 미들웨어 함수가 먼저 실행됌.(코드 순서 중요) /* app.js */ v..
1. 기본 데이터 타입(primitive data types) 정수 : byte, short, int, long 부동 소수점 타입 (실수) : float, double 부울 데이터 타입 : boolean 문자 데이터 타입 : char 1 ) 정수와 부동 소수점 1byte = 8bit, 즉 byte는 0과 1을 표현하는 1비트의 8자리이다. 1byte는 128가지(2^8)의 다른 데이터를 가질 수 있다. 프로그램을 설계할 때 메모리 공간이 낭비되지 않도록 적절한 크기의 변수를 선택하는데 주의해야한다. 특정 변수의 값 범위가 확실하지 않을 경우에는 충분한 크기의 공간을 제공해야 한다. 2) 명시적 데이터 값 (literal) java의 정수 리터럴은 int 타입이다. long 타입을 표현하기 위해서는 숫자 ..