<commit_before>
                       
   RANDOM_ACCESS_ARRAY  
                       



RANDOM ACCESS ARRAY ==>           #Array where all items have same size.
                                  #Optimized for random access.
                                  #Sometimes just called "array", whereas the abstract data type is called "abstract array".
                                  #Pros:
                                  #  - optimal space efficiency
                                  #  - great for static data structures
                                  #  - O(1) access by key
                                  #  - high locality of reference
                                  #Cons:
                                  #  - O(n) search by value, insert, delete
                                  #  - not ordered (but manually sort)
                                  #  - not persistent data structure

INDEX MAP ==>                     #Using a random access array to implement an associate array whose keys are integers.
                                  #  - as opposed to a regular array, index is conceptually not used as such,
                                  #    but as a key
                                  #  - e.g. retrieving name of months by using KEY 1-12
                                  #Also called "direct addressing" or "trivial hash function"
                                  #Used to implement an associate array

CIRCULAR BUFFER ==>               #Implementation for a queue|deque using a bounded-size array with:
                                  #  - a head|write|end pointer:
                                  #     - where push() adds value, pop() removes value
                                  #     - incremented on push(), decremented on pop()
                                  #  - a tail|read|start pointer:
                                  #     - where shift() removes value, unshift() removes value
                                  #     - incremented on shift(), decremented on unshift()
                                  #     - when end pointer passes start pointer:
                                  #        - i.e. when data is longer than bounded-size array
                                  #        - can either overwrite data or raise exception
                                  #  - both pointers rotates to start of array when at the end
                                  #Is conceptually like an array forming a circle.
                                  #push(), shift(), head(), pop(), unshift(), peek(): O(1)<commit_msg>no commit message<commit_after>
                       
   RANDOM_ACCESS_ARRAY  
                       



RANDOM ACCESS ARRAY ==>           #Array where all items have same size.
                                  #Optimized for random access.
                                  #Sometimes just called "array", whereas the abstract data type is called "abstract array".
                                  #Pros:
                                  #  - optimal space efficiency
                                  #  - great for static data structures
                                  #  - O(1) access by key
                                  #  - high locality of reference
                                  #Cons:
                                  #  - O(n) search by value, insert, delete
                                  #  - not ordered (but manually sort)
                                  #  - not persistent data structure

INDEX MAP ==>                     #Using a random access array to implement an associate array whose keys are integers.
                                  #  - as opposed to a regular array, index is conceptually not used as such,
                                  #    but as a key
                                  #  - e.g. retrieving name of months by using KEY 1-12
                                  #Also called "direct addressing" or "trivial hash function"
                                  #Used to implement an associate array

CIRCULAR BUFFER ==>               #Bounded-size array with:
                                  #  - a head|write|end pointer:
                                  #     - where push() adds value, pop() removes value
                                  #     - incremented on push(), decremented on pop()
                                  #  - a tail|read|start pointer:
                                  #     - where shift() removes value, unshift() removes value
                                  #     - incremented on shift(), decremented on unshift()
                                  #     - when end pointer passes start pointer:
                                  #        - i.e. when data is longer than bounded-size array
                                  #        - can either overwrite data or raise exception
                                  #  - both pointers rotates to start of array when at the end
                                  #Is conceptually like an array forming a circle.
                                  #Used to implement a queue|deque.
                                  #push(), shift(), head(), pop(), unshift(), peek(): O(1)
{'fraction_non_alphanumeric': 0.15511607910576097, 'fraction_numerical': 0.0017196904557179708, 'mean_word_length': 1.0749197288619337, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 89, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2563220', 'n_tokens_mistral': 3120, 'n_tokens_neox': 2927, 'n_words': 428}