<commit_before># scrimp
scrimp has two things:
  1. A bunch of bytecode tests to help you see what is the most bytecode efficient route to go down
  2. A collection of lightweight data structures and algorithms in java for use in MIT's BattleCode competition (battlecode.org)
    * As theses are classes they inherently won't be the fastest, but they will be much better than using the built in java.utils.* data structures

## ByteCode Tests

Extensive tests to see what is the bytecode optimal way of doing things. Check them out [here](docs/bytecode/bytecode.md)!

## Data structures

A collection of ligher weight data structures and algorithms. These won't be the fastest in the world but they will be much faster than their java.utils.* equivilants.

#### Who should use these
Use these if you're new to BattleCode and just want to get something up there and working! You can worry about Bytecode optimization later but for now this collection will get you up and running with large performance gains over the java.utils.* and should be just as easy to use.

```
int num = 50;

System.out.println("Good Way Array");
Timer.StartTimer();
int[] intA = new int[num];
for (int i = 0; i < num; i++) {
    intA[i] = i;

}
for (int i = 0; i < num; i++) {
    System.out.println(intA[i]);
}
Timer.EndTimer();
// 963 Bytecodes

<commit_msg>Fixed README to be easier to read<commit_after># scrimp
scrimp has two things:
  1. A bunch of bytecode tests to help you see what is the most bytecode efficient route to go down
  2. A collection of lightweight data structures and algorithms in java for use in MIT's BattleCode competition (battlecode.org)
    * As theses are classes they inherently won't be the fastest, but they will be much better than using the built in java.utils.* data structures

## ByteCode Tests

Extensive tests to see what is the bytecode optimal way of doing things. Check them out [here](docs/bytecode/bytecode.md)!

  * [Control Flow](docs/bytecode/control_flow/control_flow.md)
  * [Data Types](docs/bytecode/data_types/data_types.md)

## Data structures

A collection of ligher weight data structures and algorithms. These won't be the fastest in the world but they will be much faster than their java.utils.* equivilants.

#### Who should use these
Use these if you're new to BattleCode and just want to get something up there and working! You can worry about Bytecode optimization later but for now this collection will get you up and running with large performance gains over the java.utils.* and should be just as easy to use.

```
int num = 50;

System.out.println("Good Way Array");
Timer.StartTimer();
int[] intA = new int[num];
for (int i = 0; i < num; i++) {
    intA[i] = i;

}
for (int i = 0; i < num; i++) {
    System.out.println(intA[i]);
}
Timer.EndTimer();
// 963 Bytecodes


{'fraction_non_alphanumeric': 0.0810522573764664, 'fraction_numerical': 0.006398862424457874, 'mean_word_length': 4.025, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 3, 'https://': 0, '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': '6105018', 'n_tokens_mistral': 813, 'n_tokens_neox': 778, 'n_words': 412}