首页 > 解决方案 > 使用类还是使用内置结构实现数据结构更好?

问题描述

我正在学习数据结构并且有一个问题。在我正在阅读的教科书中,他们展示了这样一个堆栈的实现:

class Stack:
     def __init__(self):
         self.items = []

     def isEmpty(self):
         return self.items == []

     def push(self, item):
         self.items.append(item)

     def pop(self):
         return self.items.pop()

     def peek(self):
         return self.items[len(self.items)-1]

     def size(self):
         return len(self.items)

我不需要创建一个全新的类?为什么他们不能像这样创建一个堆栈:

myStack = []

>>> myStack.append('a')
>>> myStack.append('b')
>>> myStack.append('c')

>>> myStack
['a', 'b', 'c']

>>> myStack.pop()
'c'
>>> myStack.pop()
'b'
>>> myStack.pop()
'a'

它更快或更通用吗?我想了解其中的区别,以便能够在需要时决定如何实施。

谢谢!

标签: pythondata-structures

解决方案


This is just a basic example to give you a feel for how to implement your own data structure. A list is already good enough to use as a stack, but for more complicated data structures there won't be anything built in that works so well.


推荐阅读