자바 reverse 스택
public class StackTest
{
public static void main( String[] args )
{
Stack stack = new Stack(6);// stack의 최고 크기 설정
stack.push( '1' );
stack.push( '2' );
stack.push( '3' );
stack.push( '4' );
stack.push( '5' );
stack.push( '6' );
System.out.println("First array elements are: "+stack.pop());
char s;// char형으로 수정
do {
s = stack.pop();
System.out.print("Second array elements are: ");
System.out.println(s);
}
while ( s!=('1') );//문자값 비교로 수정
}
}
//====================================================
//second array 디스플레이가 좀 어색해요. 뭐가 문젠지..
//그리고 import 하지않고 저 클래스에 직접 쓰고 싶어요.
//지금은 실행 됩니다..
//문제 점은 String형으로 함수를 호출하고 char으로 받았기 때문에 발생했습니다.
class Stack {
private int maxSize;
private char[] stackArray;
private int top;
public Stack(int s) {
maxSize = s;
stackArray = new char[maxSize];
top = -1;
}
public void push(char j) {
stackArray[++top] = j;
}
public char pop() {
return stackArray[top--];
}
public char peek() {
return stackArray[top];
}
public boolean isEmpty() {
return (top == -1);
}
public boolean isFull() {
return (top == maxSize - 1);
}
}
문]
안녕하세요.배열만들고 reverse해서 디스플레이만 하면 되거든요.스텍을 이용해서 재정렬했으면 해서요.
정렬전:1,2,3,4,5
정렬후:5,4,3,2,1
이런식으로요.제가 하던건..
이걸 import java.util.Stack; 대신에 썼더니 안되더라구요..
댓글 없음:
댓글 쓰기