일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 브루트포스
- 스터디
- 탐욕법
- EventListener
- 리액트
- nodejs
- Router
- AWS
- java
- url parsing
- mysql
- EC2
- 서버구축
- react
- 완전탐색
- Spring Boot
- 라우터
- sort
- 자료구조
- 동적프로그래밍
- 다익스트라 알고리즘
- ELB
- BFS
- 정렬
- 백준
- Algorithm
- spring
- 알고리즘
- 토이프로젝트
- 백준알고리즘
- Today
- Total
목록분류 전체보기 (111)
공부하는 블로그
5052번: 전화번호 목록 문제 전화번호 목록이 주어진다. 이때, 이 목록이 일관성이 있는지 없는지를 구하는 프로그램을 작성하시오. 전화번호 목록이 일관성을 유지하려면, 한 번호가 다른 번호의 접두어인 경우가 없� www.acmicpc.net 전화번호 목록 중 한 번호가 다른 번호의 접두어가 되는지 판단하는 문제이다. import java.util.Arrays; import java.util.Scanner; class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int tc = sc.nextInt(); for (int i = 0; i < tc; i++) { int n = sc.nextInt(); S..
Hash Table 해시 테이블(Hash Table)은 자료의 탐색을 위한 알고리즘으로 탐색 키워드인 Key와 그에 대한 결과 값인 Value가 한 쌍으로 저장된 자료구조이다. 해시 테이블은 해싱(Hashing)을 통해 Key 값에 알맞은 Value를 찾아낸다. Hashing? 해싱은 Key 값에 직접 산술적인 연산을 적용하여 항목이 저장되어 있는 테이블의 주소를 계산하여 항목에 접근한다. 해싱에서 자료를 저장하는 데 배열을 사용한다. 배열은 원하는 항목이 저장된 인덱스(index)를 알고 있을 경우 O(1)의 시간 복잡도로 매우 빠르게 자료를 삽입하거나 꺼낼 수 있다. 배열의 인덱스는 0부터 시작하는 정수로 문자열인 Key를 통해 배열로 저장된 Value에 접근하기 위해서는 해시 함수(Hash Func..
Servlet 서블릿(Servlet)은 웹 페이지를 동적으로 생성하여 응답하는 서버측의 자바 프로그램이다. 여기서 동적으로 생성한다는 것은 어떤 의미일까? 간단한 예로 우리가 웹 페이지에서 로그인을 한다고 가정해보자. 우리는 웹 서버로 아이디, 비밀번호와 함께 로그인 시켜달라고 서버측으로 요청하게 된다. 서버측에서는 우선 DB에 저장된 아이디와 비밀번호가 요청과 일치하는지 판단하여 일치하는 경우에는 로그인된 페이지를, 불일치하는 경우에는 로그인 실패 페이지를 응답하게 된다. 이러한 일련의 과정은 동적이다고 할 수 있다. 즉, 각기 다른 사용자의 요청에 따라 서버측에서 데이터를 조회하고 경우에 따라 알맞게 웹 브라우저에 페이지를 생성해주는 것을 '동적이다'라고 하며 이러한 역할을 수행하는 것이 바로 서블릿..
Abstract Class? 추상 클래스(Abstract Class)는 하나 이상의 추상 메서드를 포함하는 클래스이다. 여기서 추상 메서드란 정의만 내려진 채 내용이 없는 메서드이다. 즉, 기능(로직)은 없이 뼈대(결과값과 매개변수의 자료형)만 있는 메서드이다. 이러한 추상 메서드는 추상 클래스를 상속 받은 서브 클래스에서 구현된다. 자바에서 추상 클래스와 추상 메소드를 선언하기 위해서는 접근제어자 뒤에 abstract를 붙여주면 된다. Interface? 인터페이스(Interface)는 추상 메서드로만 구성되어 있으며 추상 클래스와 마찬가지로 인터페이스에서 선언된 추상 메서드는 서브 클래스에서 구현된다. 자바에서 예약어로 class 대신 interface를 사용하며 extends 대신 implement..
객체 지향 프로그래밍(Object Oriented Programming, OOP)은 각각의 기능들을 객체화(클래스화)시켜 메인함수에서는 객체화시킨 기능들을 호출해서 사용하는 프로그래밍 기법으로 캡슐화, 상속, 다형성의 특징을 가지고 있다. 캡슐화(Encapsulation) 캡슐화는 일반적으로 변수와 함수를 클래스로 묶는 작업을 말한다. 캡슐화를 할 때에는 무작위로 클래스를 지정하는 것이 아니라 연관된 목적을 가지고 있는 변수와 함수별로 작업을 해야 한다. 또한, 캡슐화는 외부의 잘못된 접근으로 값이 변하는 것을 막기 위해 클래스 내의 변수나 함수를 감추거나 드러내는 은닉성을 지니고 있다. 이러한 은닉성은 자바에서 접근제어자를 통해 실현시킬 수 있다. 접근제어자(Access Modifier) · publi..
Spring Framework? 스프링 프레임워크(Spring Framework)는 자바 기반의 경량급 어플리케이션 프레임워크로서 자바를 이용한 어플리케이션 개발을 더욱 간편하게 해주는 틀이다. 줄여서 스프링이라고 한다. * Framework : 코드 품질 및 개발 속도를 상향 평준화시키기 위해 고안된 규약이자 표준 개발 방법을 제공해주는 어플리케이션 왜 스프링을 사용할까? IoC와 DI나 AOP 같은 개발을 더욱 편리하게 해주는 기능을 사용하기 위해 스프링을 사용한다. 원래는 개발자가 해야하는 작업을 스프링 컨테이너에서 자체적으로 수행해주어 개발자가 비즈니스 로직에 더욱 집중할 수 있도록 도와준다. 스프링의 특징 POJO(Plain Old Java Object) POJO는 EJB(Enterprise J..
AWS? 클라우드 서비스 | 클라우드 컴퓨팅 솔루션| Amazon Web Services 미디어 및 엔터테인먼트 Live Nation Entertainment, AWS를 사용하여 혁신 속도를 높이고 비용을 절감하며 애플리케이션 가용성을 개선 세계 최고의 라이브 엔터테인먼트 기업이 어떻게 AWS 클라우드를 사용하여 고객에게 개선된 경험을 더욱 빠르게 제공하는지 알아보십시오. 자세히 알아보기 보다 나은 고객 경험 추구 Live Nation은 콘서트를 제작하고, 티켓을 판매하고, 밴드를 음악과 연결해주는 세계 최고의 라이브 엔터테인먼트 기업입니다 aws.amazon.com AWS는 Amazon Web Service의 줄임말로, 아마존닷컴의 클라우드 컴퓨팅 플랫폼이다. IT 인프라 구축에 필요한 온갖 서비스들을..
Queue? 컴퓨터의 기본적인 자료 구조의 한가지로, 먼저 집어 넣은 데이터가 먼저 나오는 FIFO(First In First Out) 구조로 저장하는 형식을 말한다. 나중에 집어 넣은 데이터가 먼저 나오는 스택과는 반대되는 개념이다. Queue Method · add() : 리스트의 끝 부분에 새로운 요소를 추가한다. · remove() : 리스트의 첫 번째 항목을 제거한다. · peek() : 큐에서 가장 위에 있는 항목을 반환한다. · isEmpty() : 큐가 비어 있을 때에 true를 반환한다. Queue Code(JAVA) import java.util.ArrayList; import java.util.List; class MyQueue { private List que = new ArrayL..