数据结构
对于一个数据结构来说,我们比较关注的就是三点:添加,查找,删除
线性数据结构: 数组
链表(双向,单向,循环)
stack(FILO)
Queue(FIFO,BFS 循环队列)
非线性的数据结构:
Tree(Binary Search Tree,R-B tree,Dictionary Tree,Huffman tree)(其中huffman Tree是为了进行非定长的编码,对于出现次数比较多的可以选择比较短的编码,可以节约内存)
Graphic ,查并集
Table(Hash_table)
对于线性数据结构,比较适合用迭代循环方法,而对于树状数据结构,比如二叉树,递归方法则非常简洁优雅。
大多数想法要么平庸,要么更糟糕,这很大程度上因为绝妙的想法难得一见,而且他们还要在我们身边这个充斥了各种恶俗的所谓常识的环境中孕育生长。