https://github.com/emfomy/dsa-final
Data Structures and Algorithms - Final Project
https://github.com/emfomy/dsa-final
Last synced: 7 months ago
JSON representation
Data Structures and Algorithms - Final Project
- Host: GitHub
- URL: https://github.com/emfomy/dsa-final
- Owner: emfomy
- Created: 2015-07-15T07:18:25.000Z (about 10 years ago)
- Default Branch: master
- Last Pushed: 2015-07-15T07:22:33.000Z (about 10 years ago)
- Last Synced: 2025-01-29T03:36:04.584Z (8 months ago)
- Language: C++
- Homepage:
- Size: 2.06 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# DSA_Final
Data Structures and Algorithms - Final Project## Programming
### Git
* Uses [GitHub](https://github.com/NTUDSA2014/dsa15_final12) to host.
* Uses [git-flow](http://nvie.com/posts/a-successful-git-branching-model/) to control branches.### C++
* Uses [Google C++ Style Guide](http://google-styleguide.googlecode.com/svn/trunk/cppguide.html) but uses `.cpp` and `.hpp` as extensions.## Install
Compile with `make ACCOUNT=`. The defalut value of `ACCOUNT` is `HASHMAP`.
* `ACCOUNT=AVLTREE`: use AVL tree for `AccountMap`.
* `ACCOUNT=HASHMAP`: use hash map for `AccountMap`.
* `ACCOUNT=SKIPLIST`: use skip list for `AccountMap`.## Directories
Make sure $(DSA) is set to the root of this project### `/src`
The source files (`*.cpp` and `*.hpp`).#### `/src/main`
The main files (`final_project.cpp`).#### `/src/core`
The core files.#### `/src/account_void`
The source code of `AccountMap` without implementation.#### `/src/account_avl_tree`
The implementation of `AccountMap` using AVL tree.#### `/src/account_hash_map`
The implementation of `AccountMap` using hash map.#### `/src/account_skip_list`
The implementation of `AccountMap` using skip list.#### `/src/history_void`
The source code of `HistoryMap` without implementation.#### `/src/history_hash_map`
The implementation of `HistoryMap` using hash map.### `/lib`
The library files (`*.lib`).### `/include`
The header files for library (`*.hpp`).### `/interface`
The interface for library (`*.hpp`).### `/doc`
The report (`*.pdf`).### `/ext`
Third-party libraries.#### `/ext/openssl`
* [OpenSSL cryptographic library](https://www.openssl.org/docs/crypto/crypto.html): uses for MD5 cryptography.#### `/ext/gnu_avl`
* [GNU libavl](http://adtinfo.org/): uses for AVL tree.