일지
자료구조...52
niamdank
2020. 12. 16. 10:58
연결 리스트 큐 삽입 메서드 구현
LinkedListQueue.cpp
/// <summary>
/// LinkedListQueue의 끝 부분에 값을 추가한다.
/// </summary>
/// <param name="value">추가할 값</param>
void LinkedListQueue::Enqueue(int value)
{
m_items.Add(value);
}
연결 리스트 큐 인출 메서드 구현
LinkedListQueue.cpp
/// <summary>
/// LinkedListQueue의 시작 부분을 제거하지 않고 반환한다.
/// </summary>
/// <returns>시작 부분에 있는 값</returns>
int LinkedListQueue::Peek()
{
if (m_items.Count() <= 0)
{
throw std::out_of_range("empty");
}
return m_items.Item(0);
}
/// <summary>
/// LinkedListQueue의 시작 부분의 값을 제거한 뒤 반환한다.
/// </summary>
/// <returns>시작 부분에 있던 값</returns>
int LinkedListQueue::Dequeue()
{
if (m_items.Count() <= 0)
{
throw std::out_of_range("empty");
}
int data{ m_items.Item(0) };
m_items.RemoveAt(0);
return data;
}
/// <summary>
/// LinkedListQueue의 모든 값을 제거한다.
/// </summary>
void LinkedListQueue::Clear()
{
m_items.Clear();
}
연결 리스트 큐 기능 메서드 구현
LinkedListQueue.cpp
/// <summary>
/// LinkedListQueue에 지정한 값이 존재하는지 확인한다.
/// </summary>
/// <param name="value">LinkedListQueue에서 찾을 값</param>
/// <returns>값의 존재 여부</returns>
bool LinkedListQueue::Contains(int value)
{
return m_items.Contains(value);
}