Python数据结构(一)

1.队列(queue)

队列是先进先出的,在这里利用collections模块中的deque函数,只需要使用deque的两个方法(.popleft(),.append)便可以快速的实现先进先出。


2.栈(stack)

栈是后进先出的,同样使用deque()函数,非常简单。


3.二叉树的遍历

二叉树有三个属性,根节点,左子树,右子树。只需要一个递归方法,问题便迎刃而解。



定义二叉树



先序遍历



中序遍历

对于中序遍历来书只需要把  [root.val]放在中间,后序遍历以此类推。

4.堆(heap)

最小堆问题(min_heap)



我们知道利用最小堆可以解决求一堆数里面的最大的k个数,简称topk问题。

代码实现的具体思路我将会在程序中注释出来:




你可能感兴趣的:(Python数据结构(一))