数据结构
图灵的咖啡
脚踏实地 不忘初心
展开
-
数据结构——栈
用数组实现一个顺序栈 class ArrayStack: def __init__(self, length): self.stack = [] self.length = length def is_empty(self): if len(self.stack) == 0: return True ...原创 2019-04-16 14:30:07 · 94 阅读 · 0 评论 -
数据结构——队列
先进先出结构 用数组实现一个顺序队列 class ArrayQueue: def __init__(self, length): self.queue = [None]*length self.length = length self.front = 0 self.rear = 0 def in_queue(...原创 2019-04-16 14:32:38 · 126 阅读 · 0 评论 -
数据结构——数组
实现一个支持动态扩容的数组 class DynamicArray: def __init__(self): self._n = 0 self._capacity = 10 self._A = self._make_array(self._capacity) def __len__(self): retur...原创 2019-04-16 14:42:13 · 172 阅读 · 0 评论 -
数据结构——链表
单链表 class Node: next = None data = None def __init__(self, nodeData): self.data = nodeData class List: head = None size = 0 def __init__(self): self.size ...原创 2019-04-16 14:38:04 · 131 阅读 · 0 评论 -
数据结构——字符串
字典树的实现 class Trie: def __init__(self): self.root = {} self.end_of_word = '#' def insert(self, chars): node = self.root for char in chars: nod...原创 2019-04-16 14:53:09 · 150 阅读 · 0 评论 -
数据结构——排序
冒泡排序 稳定 时间复杂度O() 空间复杂度O(1) def bubble_sort(lst): if len(lst) < 2: return # 最后一次交换的下标, 每经过一次便利,后面有序区至少多增加一位 last_change_index = len(lst) - 1 for i in range(len(lst) - 1...原创 2019-04-16 15:11:00 · 156 阅读 · 0 评论 -
数据结构——散列表
实现一个基于链表法解决冲突问题的散列表 class _ListNode: def __init__(self, key): self.key = key self.next = None class HashMap: def __init__(self, size): self._table = [None] * size ...原创 2019-04-16 15:14:55 · 134 阅读 · 0 评论