일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 커맨드공부
- 인증서만료에러
- was버그
- OpenAPI
- table scan
- Bandit Level 6
- was SQLRecoverableException
- Law of Demeter
- java.sql.SQLRecoverableException
- 프로토타입 모형
- mysql 튜닝
- springboot
- Bandit Level 5
- 스크럼기법
- 클린코드
- vue
- 명령어공부
- 디미터 법칙
- SQLRecoverableException
- Bandit Level 6 → Level 7
- pl/sql
- 변수명 짓는법
- 에자일 모형
- plsql
- 폭포수 모형
- avax.net.ssl.SSLHandshakeException:
- 시스템 파악 정리
- 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 |