Stack & Queue 구현

2D3·2022년 7월 25일
0

부트캠프 일지

목록 보기
7/15

Stack

push 스택에 데이터를 추가

public void push(Integer data) {
      listStack.add(data);
  }

pop 가장 나중에 추가된 데이터를 스택에서 삭제하고 삭제한 데이터를 리턴

public Integer pop() {
     if(listStack.size() == 0) {
      return null;
    }else {
      return listStack.remove(listStack.size() - 1);
    }
  }

size 스택에 추가된 데이터의 크기를 리턴

 public int size() {
   return listStack.size();
}

peek 가장 나중에 추가된 데이터를 리턴

public Integer peek() {
   if(listStack.size() == 0) {
    return null;
  }else {
    return listStack.get(listStack.size() - 1);
  }
}

show 현재 스택에 포함되어 있는 모든 데이터를 String 타입으로 변환하여 리턴

 public String show() {
  return listStack.toString();
}

clear stack에 들어있는 모든 데이터를 삭제

public void clear() { listStack.clear(); }
}

Queue

add 큐에 데이터를 추가

public void add(Integer data) {
    listQueue.add(data);
  }

poll 가장 먼저 추가된 데이터를 큐에서 삭제하고 삭제한 데이터를 리턴

 public Integer poll() {
  if(listQueue.size() == 0) {
    return null;
  }else {
  return listQueue.remove(0);
  }
}

size 큐에 추가된 데이터의 크기를 리턴

public int size() {
  return listQueue.size();
}

peek 큐에 가장 먼저 추가된 데이터를 리턴

public Integer peek() {
  if(listQueue.size() == 0) {
    return null;
  }else {
    return listQueue.get(0);
  }
}

show 큐에 들어있는 모든 데이터를 String 타입으로 변환하여 리턴

 public String show() {
  return listQueue.toString();
}

clear 큐에 들어있는 모든 데이터를 삭제

 public void clear() { 
		listQueue.clear(); 
	}
}
profile
return Success;

0개의 댓글