Metadata-Version: 2.1
Name: ToyData
Version: 1.0
Summary: Data Structures in Python.
Home-page: UNKNOWN
Author: Xiangzhuang Shen
Author-email: datahonor@gmail.com
License: UNKNOWN
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Description-Content-Type: text/markdown

## ToyData: Learning Data Structures with toy code

![](https://github.com/shenxiangzhuang/ToyData/raw/master/toydata.png)


There are some simple implementations(in Python3.7.6) of classic data structrues.

I am trying to do this with an easy-to-read style.

And, I add some extra functions beyond the ADTs, which are used mostly for printing and testing purposes.


### Books

[*Data Structures and Algorithms in Python, Michael T. Goodrich*](https://www.amazon.com/Structures-Algorithms-Python-Michael-Goodrich/dp/1118290275/ref=sr_1_4?qid=1580122939&refinements=p_27%3AMichael+T.+Goodrich&s=books&sr=1-4&text=Michael+T.+Goodrich) 
is the **main reference** of the implementations.

Note that there is a book named [*Data Structures and Algorithms in C++, Michael T. Goodrich*](https://www.amazon.com/Data-Structures-Algorithms-Michael-Goodrich/dp/0470383275/ref=sr_1_2?qid=1580122957&refinements=p_27%3AMichael+T.+Goodrich&s=books&sr=1-2&text=Michael+T.+Goodrich) which use C++ to implement these data structures.

And [*Data Structures Using C, Reema Thareja*](https://www.amazon.in/Data-Structures-Using-Reema-Thareja/dp/0198099304/ref=sr_1_1?qid=1580122713&refinements=p_27%3AReema+Thareja&s=books&sr=1-1) is also a great book that implement these data structures using C.



### Documentation
[ToyData](http://datahonor.com/ToyData/)


### API

- [x] Stack: ArrayStack, LinkedStack
- [x] Queue: ArrayQueue, ArrayDeque
- [x] Deque: LinkedDeque
- [x] Positional List: PositionalList
- [x] Prority Queues: UnsortedPriorityQueue, SortedPriorityQueue, HeapPriorityQueue
- [x] LinkedLists: Singlellist, Doublellist
- [x] Hash Tables: ChainHashMap, ProbeHashMap, SortedTableMap
- [x] Trees: LinkedBinaryTree
- [x] Search Trees: AVLTreeMap, SplayTreeMap, RedBlackTreeMap
- [x] Graph: Adjacency Map, DFS/BFS, Floyd-Warshall 



### Courses
There some courses that use the book(*Data Structures and Algorithms in Python*) as textbook.(Tell me please, if you know other courses use it:-)

1. [数据结构与算法-Python (2019秋季)，武汉大学](http://xpzhang.me/)
    >Great lecture notes.


### References:

1. [Jenny's lectures CS/IT NET&JRF](https://www.youtube.com/channel/UCM-yUTYGmrNvKOCcAl21g3w/playlists)
    >Jenny makes everything clear！

