Stack 위 그림과 같이 같은 타입의 데이터를 정해진 방향으로만 쌓을 수 있고, top으로 정해진 곳을 통해서만 접근 가능한 자료 구조를 말합니다. top은 가장 최근에 들어온 데이터를 의미하며, 데이터를 추가하는 push 연산과 데이터를 제거하는 pop 연산이 있습니다. 따라서 스택은 후입선출(Last-In First-Out) 구조를 가집니다. 스택 활용 예제를 보면 다음과 같습니다. - 웹 브라우저 방문 기록(뒤로 가기) - 역순 문자열 만들기 - 실행 취소(undo) - 후위 표기법 계산 - 수식의 괄호 검사 1. Array(배열)을 사용하여 스택 구현 package study; public class StackByArray { private static final int MAX_STACK_NUM..
Java의 배열과 리스트에 대해 알아보겠습니다. 배열(Array) 여러 데이터를 하나의 이름으로 그룹핑하여 관리하기 위한 자료구조입니다. 논리적인 저장 순서와 물리적인 저장 순서가 같으며 연속된 메모리 공간을 차지합니다. 배열의 값에는 index를 통해 접근할 수 있습니다. 배열은 선언과 동시에 크기를 지정해야합니다. int[] a = new int[5]; // 크기가 5인 int 타입 값을 연속으로 저장할 수 있는 배열 생성 int[] b = {1, 2, 3, 4, 5}; // 초기화를 통해 배열의 크기를 지정할수도 있습니다. System.out.println(b[2]); // 결과: 3 - 인덱스를 통해 값에 접근 가능합니다. 인덱스는 0부터 시작합니다. 장점 - 인덱스를 통해 검색이 용이합니다. -..
Java에서는 프로그램의 순서를 제어하거나 수행 횟수를 결정하는 등의 기능을 하는 제어문을 제공합니다. 선택문 선택문은 if 문과 switch 문이 있습니다. - if 문 if (조건식) { 조건이 참일 때 실행할 내용 } if (조건식) { 조건이 참일 때 실행할 내용 } else { 조건이 거짓일 때 실행할 내용 } if (조건1) { 조건1이 참일 때 실행할 내용 } else if (조건2) { 조선1은 거짓이지만 조건2가 참일 때 실행할 내용 } else { 조건1, 조건2가 모두 거짓일 때 실행할 내용 } - switch 문 변수에 대해 평가하고 이를 분기할 수 있습니다. 평가 당하는 변수는 기본 타입(primitive type) 또는 Enum, String, Wrapper 클래스도 가능합니다...
이번 글에서는 스프링의 가장 기본이 되는 개념인 IoC와 DI에 대해 이해해보겠습니다. 최종적으로 IoC와 DI를 이해하기 위해 데이터베이스에 접속하여 데이터를 추가하고 조회하는 간단한 기능을 하는 DAO를 예로 살펴보겠습니다. (프로젝트는 Gradle 빌드 기반을 사용하였습니다.) 초기 코드 데이터베이스에 접속하는 방식에 대한 내용을 담은 ConnectionMaker 인터페이스를 만들고 이를 구현한 두 개의 DConnectionMaker, NConnectionMaker를 만들었습니다. (추후 또 다른 데이터베이스 접근 방식이 필요한 경우 ConnectionMaker 인터페이스를 구현한 또 다른 클래스를 생성하면 됩니다.) package dao; import java.sql.Connection; impo..
이번에는 Java에서 제공하는 다양한 연산자에 대해 알아보겠습니다. 연산자란, 특정 작업을 수행하기 위한 기호를 의미합니다. 산술 연산자 수학적인 계산을 위해 사용되는 연산자를 말합니다. 연산 프로그래밍 일반 더하기 + + 빼기 - - 곱하기 * x 나누기 / ÷ 나머지 % (특별한 기호 x) 나누기의 경우 몫을 반환하고 나머지를 구하고 싶다면 나머지 연산자를 사용하여야 합니다. int a = 5; int b = 2; System.out.println(a / b); // 2 System.out.println(a % b); // 1 double c = a / b; // 2.0 - a, b 모두 정수이기 때문에 몫이 2가 나오고 이를 double 타입으로 변환하여 2.0이 저장됩니다. System.out.p..
- Total
- Today
- Yesterday
- DFS
- 프로그래머스
- permutation
- java
- Baekjoon
- CodePipeline
- 에라토스테네스의 체
- CodeDeploy
- Algorithm
- 조합
- EC2
- spring
- 순열
- programmers
- 소수
- cloudfront
- ECR
- SWIFT
- search
- array
- 수학
- Dynamic Programming
- ionic
- CodeCommit
- string
- BFS
- Combination
- map
- AWS
- sort
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |