일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- CSS
- 시스템 파악
- SQLRecoverableException
- was버그
- 폭포수 모형
- 인증서만료에러
- 명령어공부
- pl/sql
- Bandit Level 5
- OpenAPI
- Bandit Level 6
- 커맨드공부
- vue
- java.sql.SQLRecoverableException
- was SQLRecoverableException
- 시스템 파악 정리
- avax.net.ssl.SSLHandshakeException:
- 에자일 모형
- mysql 튜닝
- Bandit Level 6 → Level 7
- 클린코드
- 변수명 짓는법
- 디미터 법칙
- springboot
- 나선형 모형
- Law of Demeter
- plsql
- table scan
- 프로토타입 모형
- 스크럼기법
- Today
- Total
개발햄비
[자료구조] java stack 구현하기 (2) 본문
배열을 이용한 구현
리스트와 마찬가지로 스택을 구현하는 방법은 배열과 연결 리스트가 있는데 먼저 배열을 이용하여 구현해본다.
배열에 실제 데이터를 저장하기 때문에 데이터를 저장할 배열이 하나 필요,
스택의 최대 크기를 저장할 변수와 스택의 입출력 데이터를 가리키는 top을 관리하기 위한 변수가 필요.
package testProject;
public class StackTestClass {
private int top;
private int maxSize;
private int[] stackArray;
public StackTestClass (int size) {
maxSize = size;
top = -1;
stackArray = new int[maxSize];
}
public void push(int value) {
stackArray[++top] = value;
}
public int peek() {
return stackArray[top];
}
public int pop() {
return stackArray[top--];
}
}
public class test {
public static void main(String[] args) {
StackTestClass stack = new StackTestClass(5);
stack.push(1);
System.out.println(stack.peek());
stack.push(2);
System.out.println(stack.peek());
stack.push(3);
System.out.println(stack.peek());
stack.push(4);
System.out.println(stack.peek());
stack.push(5);
System.out.println(stack.peek());
stack.pop();
System.out.println(stack.peek());
stack.pop();
System.out.println(stack.peek());
stack.pop();
System.out.println(stack.peek());
stack.pop();
System.out.println(stack.peek());
}
}
출력
---------------------------------------------------------------------
1
2
3
4
5
4
3
2
1
---------------------------------------------------------------------
'개발 > java' 카테고리의 다른 글
[java] springBoot + mybatis + mysql 게시판 환경설정(2) (0) | 2019.10.24 |
---|---|
[java] springBoot + mybatis + mysql 게시판 환경설정(1) (0) | 2019.10.23 |
[자료구조] java stack 정리 (1) (0) | 2019.03.10 |
[Java]ArrayLiist와 LinkedList 의 차이 (0) | 2019.01.09 |
[Java]GC(가비지 콜렉터)란? (0) | 2019.01.06 |