If the stack top is maintained at the end of the linked list, i.e. stack top is the last item, accessing the stack top would take a lot of time, since N items of the linked list need to be traversed before we can access the last item, This would require N-1 hops. Hence, implementing pop or push in the stack would take more time.
However, if we add a tail pointer to the linked list, the implementation will then be efficient, as we can directly access the last item now. Am I on the right track?
But for both cases, how fast can I get to the stack top item? and how fast can I pop or push?