<commit_before># Data Structures

## TODO 

### PRIORITY

- `TSP`

 - adding the operations:
 
    - [`longestPrefixOf`](https://github.com/nelson-brochado/algs4/blob/master/src/main/java/edu/princeton/cs/algs4/TST.java)
   
    - [`keysWithPrefix`](https://github.com/nelson-brochado/algs4/blob/master/src/main/java/edu/princeton/cs/algs4/TST.java)
   
    - [`keysThatMatch`](https://github.com/nelson-brochado/algs4/blob/master/src/main/java/edu/princeton/cs/algs4/TST.java)
 
 - Add tests

- `DSForests`
 - Add deletion operation
 - Add iterative find-set operation
   - Check my solutions to first homework of AnD2
 - Add [print-set operation](http://stackoverflow.com/questions/23055236/union-find-retrieve-all-members-of-a-set-efficiently)

- `Queue.py`
 - Add tests
 - Re-implement a MinPriorityQueue 
  - Add tests for MinPriorityQueue

- `Graph`
 - Redesign the graph data structure:
 - It should allow the possibility to be represented either as _adjacency list_ or _adjacency matrix_. 
 - It should also give the possibility to create either directed or undirected graphs.
 - It should support the common operations efficiently
 
 - `RBT`
 
  - Augment RBT to support order statistic trees (OS-RANK and OS-SELECT in O(log n))
  - Augment RBT to support interval trees

### NON-PRIORITY

- Exhaustive list of data structures which can be possibly implemented (if not already):
 - [https://en.wikipedia.org/wiki/List_of_data_structures](https://en.wikipedia.org/wiki/List_of_data_structures)<commit_msg>Fixed an indentation problem<commit_after># Data Structures

## TODO 

### PRIORITY

- `TSP`

 - adding the operations:
 
    - [`longestPrefixOf`](https://github.com/nelson-brochado/algs4/blob/master/src/main/java/edu/princeton/cs/algs4/TST.java)
   
    - [`keysWithPrefix`](https://github.com/nelson-brochado/algs4/blob/master/src/main/java/edu/princeton/cs/algs4/TST.java)
   
    - [`keysThatMatch`](https://github.com/nelson-brochado/algs4/blob/master/src/main/java/edu/princeton/cs/algs4/TST.java)
 
 - Add tests

- `DSForests`
 - Add deletion operation
 - Add iterative find-set operation
   - Check my solutions to first homework of AnD2
 - Add [print-set operation](http://stackoverflow.com/questions/23055236/union-find-retrieve-all-members-of-a-set-efficiently)

- `Queue.py`
 - Add tests
 - Re-implement a MinPriorityQueue 
   - Add tests for MinPriorityQueue

- `Graph`

 - Redesign the graph data structure:

 - It should allow the possibility to be represented either as _adjacency list_ or _adjacency matrix_. 
 
 - It should also give the possibility to create either directed or undirected graphs.
 
 - It should support the common operations efficiently
 
- `RBT`
 
  - Augment RBT to support order statistic trees (OS-RANK and OS-SELECT in O(log n))
 
  - Augment RBT to support interval trees

### NON-PRIORITY

- Exhaustive list of data structures which can be possibly implemented (if not already):
 - [https://en.wikipedia.org/wiki/List_of_data_structures](https://en.wikipedia.org/wiki/List_of_data_structures)
{'fraction_non_alphanumeric': 0.1141357822236799, 'fraction_numerical': 0.009839291571006888, 'mean_word_length': 3.6923076923076925, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 10, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '718284', 'n_tokens_mistral': 1033, 'n_tokens_neox': 971, 'n_words': 240}