GithubHelp home page GithubHelp logo

dsa_final's Introduction

Final Project for Data Structures and Algorithms (NTU, Spring 2015)

This project simulates the requirements for a bank account management system. We designed different data structures to store the information and support several functions efficiently, including

  • login : based on a ID and a password. Note that the password cannot be stored in your system in its original form.
  • create : create an account with some demanded ID. If the ID already exists, some alternative IDs must be recommended.
  • delete : delete an account
  • withdraw : withdraw money from an account
  • transfer : transfer money to another account with either
  • merge : merge two accounts into one
  • search : search the history of transfer

We used the pointer of the struct History to store the transferring history in an account so that the history can be modified simultaneously in both accounts when a merge operation is processed. We tried map, hash table (unordered_map), trie, ternary tree for storing accounts. We ranked number one among more than fifty teams in the judge system before the final rejudgement. Please refer to report.pdf for more details.

dsa_final's People

Contributors

jojorge avatar silentazure avatar wjtung avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.