Я создаю свою собственную общую структуру данных стека, используя связанный список в качестве основы для нее, но мне нужно сделать размер() метод, аналогичный методу встроенного размера для стеков. Я не уверен, как это сделать со структурой Linked List?Написание метода size() для определяемого пользователем класса стека (связанный список)
public class LLStack<T> implements StackInterface {
private class ListNode
{
private T data;
private ListNode link;
public ListNode(T aData, ListNode aLink)
{
data = aData;
link = aLink;
}
}
private ListNode head;
public LLStack()
{
head = null;
}
public void push(Object data)
{
ListNode newNode = new ListNode((T)data, head);
head = newNode;
}
public T pop()
{
if(head == null)//Empty stack
return null;
T retVal = head.data;
head = head.link;
return retVal;
}
public T peek()
{
if(head == null)
return null;
else
return head.data;
}
public void print()
{
ListNode temp = head;
while(temp != null)
{
System.out.println(temp.data);
temp = temp.link;
}
}
public int size() {
}
Держите размер поля. Следите за обновлениями при изменении размера. – user2357112
@ user2357112 Вы имеете в виду приращение/декремент, привязанные к моим методам push/pop? –