aboutsummaryrefslogtreecommitdiff
path: root/README.md
blob: c37adb64388d7ea217601f40decaa6871ba644d1 (plain)
1
2
3
4
5
6
7
8
9
# SD

Very efficient flash cards app using Go and SQLite

## Performance

SD is designed to be extremely efficient in order to support a very large number of flash cards and should be able to handle several billion cards with ease. If `N` is the number of cards, initializing the program requires `O(N)` time and `O(N)` memory. Selecting a random card and adjusting its weight based on if the user got it correct requires `O(log N)` time.

A C port is planned but will probably never happen.