일지

자료구조...37

niamdank 2020. 11. 23. 19:44

선형 리스트 스택 삭제 메서드 구현

 

ArrayListStack.cpp

/// <summary>
/// ArrayListStack의 최상위 값을 제거하지 않고 반환한다.
/// </summary>
/// <returns>최상위에 있는 값</returns>
int ArrayListStack::Peek()
{
	if (m_top <= 0)
	{
		throw std::out_of_range("empty");
	}

	return m_items.Item(m_top - 1);
}

/// <summary>
/// ArrayListStack의 최상위 값을 제거한 뒤 반환한다.
/// </summary>
/// <returns>최상위에 있던 값</returns>
int ArrayListStack::Pop()
{
	if (m_top <= 0)
	{
		throw std::out_of_range("empty");
	}

	m_top--;
	return m_items.Item(m_top);
}

/// <summary>
/// ArrayListStack의 모든 값을 제거한다.
/// </summary>
void ArrayListStack::Clear()
{
	m_top = 0;
	m_items.Clear();
}