NOTE: ADDRESS SOCIAL GRAPHS, SINCE THEY'RE REFERENCED FROM FAANG PAGE Values, records, hierarchies (trees), types & more ## freeCodeCamp dev quiz - Data Structures When you create an array, you are allocated a block of contiguous memory and in order to change it's size, you will have to create a new array. A stack is the most suitable data structure for converting an infix expression to a postfix expression Lists are mutable built-in data structures in Python. This means that you can add new elements to a list, update the elements of a list, and remove elements from a list. The "indexing" of a data structure starts at 0 - The index is just a relative location from the beginning of the data set - While the rest of the record can be mutable, the keys typically MUST be immutable - Over time, in BIG data sets, the index number becomes very large and complicated, and the database needs to get rebuilt to cut down on memory use Array destructuring is used to extract array values into new variables. A dictionary can store key-value pairs, which are pairs of associated values. We use the key to access its corresponding value in the dictionary. Here are the data structures a block group can contain: Super Block: a metadata repository, which contains metadata about the entire file system, such as the total number of blocks in the file system, total blocks in block groups, inodes, and more. Not all block groups contain the superblock, though. A certain number of block groups store a copy of the super as a backup. Group Descriptors: Group descriptors also contain bookkeeping information for each block group Inode Bitmap: Each block group has its own inode quota for storing files. A block bitmap is a data structure used to identify used and unused inodes within the block group. 1 denotes used and 0 denotes unused inode objects. Block Bitmap: a data structure used to identify used & unused data blocks within the block group. 1 denotes used and 0 denotes unused data blocks Inode Table: a data structure that defines the relation of files and their inodes. The number of inodes stored in this area is related to the block size used by the file system. Data Blocks: This is the zone within the block group where file contents are stored. ## conflict-free replicated data type (CRDT) [You might not need a CRDT | Hacker News](https://news.ycombinator.com/item?id=33865672) [You might not need a CRDT | Drifting in Space](https://driftingin.space/posts/you-might-not-need-a-crdt) [CRDTs are the future | Hacker News](https://news.ycombinator.com/item?id=24617542) [I was wrong. CRDTs are the future](https://josephg.com/blog/crdts-are-the-future/) [Faster CRDTs: An Adventure in Optimization | Hacker News](https://news.ycombinator.com/item?id=28017204) [Faster CRDTs (2021) | Hacker News](https://news.ycombinator.com/item?id=41372833) [CRDTs go brrr](https://josephg.com/blog/crdts-go-brrr/) [Trade-offs between Different CRDTs | Hacker News](https://news.ycombinator.com/item?id=38916647) [Trade-offs between Different CRDTs](https://interjectedfuture.com/trade-offs-between-different-crdts/) [Movable tree CRDTs and Loro's implementation | Hacker News](https://news.ycombinator.com/item?id=41099901) [Movable tree CRDTs and Loro's implementation – Loro](https://loro.dev/blog/movable-tree) ## datagrams [Timeliness without datagrams using QUIC | Hacker News](https://news.ycombinator.com/item?id=40766079) [Never* use Datagrams - Media over QUIC](https://quic.video/blog/never-use-datagrams/) ## data structures [Data structures and algorithms I actually used while working at tech companies | Hacker News](https://news.ycombinator.com/item?id=23841491) [Data Structures & Algorithms I Used Working at Tech Companies - The Pragmatic Engineer](https://blog.pragmaticengineer.com/data-structures-and-algorithms-i-actually-used-day-to-day/) [Ask HN: What are some cool but obscure data structures you know about? | Hacker News](https://news.ycombinator.com/item?id=32186203) ## it can all be stored in a list [Storing knowledge in a single long plain text file | Hacker News](https://news.ycombinator.com/item?id=40432834) [A New Way to Store Knowledge](https://breckyunits.com/scrollsets.html) ## lists - linked lists - knn algorithm [Tressos-Aristomenis/K-NN-Algorithm-implementation-using-Linked-List: KNN algorithm implemented with Linked Lists.](https://github.com/Tressos-Aristomenis/K-NN-Algorithm-implementation-using-Linked-List) ## lists - linked lists [Linus Torvalds' good taste argument for linked lists, explained | Hacker News](https://news.ycombinator.com/item?id=25326552) [mkirchner/linked-list-good-taste: Linus Torvalds' linked list argument for good taste, explained](https://github.com/mkirchner/linked-list-good-taste) [In defense of linked lists | Hacker News](https://news.ycombinator.com/item?id=33473497) [In defense of linked lists - ](http://antirez.com/news/138) [Beating the L1 cache with value speculation (2021) | Hacker News](https://news.ycombinator.com/item?id=40940241) [Beating the L1 cache with value speculation](https://mazzo.li/posts/value-speculation.html) ## nt-lists [GitHub - NT-Lists/Docs: Various documentation in support of the NT-Lists](https://github.com/NT-Lists/Docs) ## perceptual hash library [pHash.org: Home of pHash, the open source perceptual hash library](https://phash.org) ## protobuf [Parsing Protobuf at 2+GB/S: How I Learned to Love Tail Calls in C | Hacker News](https://news.ycombinator.com/item?id=26931581) [Parsing Protobuf at 2+GB/s: How I Learned To Love Tail Calls in C](https://blog.reverberate.org/2021/04/21/musttail-efficient-interpreters.html) [Reverse Engineering Protobuf Definitions from Compiled Binaries | Hacker News](https://news.ycombinator.com/item?id=39654445) [Reverse Engineering Protobuf Definitions From Compiled Binaries](https://arkadiyt.com/2024/03/03/reverse-engineering-protobuf-definitiions-from-compiled-binaries/) [Parsing protobuf at 2+GB/s: how I learned to love tail calls in C (2021) | Hacker News](https://news.ycombinator.com/item?id=41289114) [Parsing Protobuf at 2+GB/s: How I Learned To Love Tail Calls in C](https://blog.reverberate.org/2021/04/21/musttail-efficient-interpreters.html) ## schema validation - js_typescript [GitHub - colinhacks/zod: TypeScript-first schema validation with static type inference](https://github.com/colinhacks/zod) [Colin McDonnell @colinhacks](https://colinhacks.com/) ## trees vs ai [Why do tree-based models still outperform deep learning on tabular data? | Hacker News](https://news.ycombinator.com/item?id=32333565) [[2207.08815] Why do tree-based models still outperform deep learning on tabular data?](https://arxiv.org/abs/2207.08815) ## data structures - c and c++ [Understand Data Structures in C and C++](https://www.freecodecamp.org/news/understand-data-structures-in-c-and-cpp) [GitHub - LeoVen/C-Macro-Collections: Easy to use, modular, header only, macro based, generic and type-safe Data Structures in C](https://github.com/LeoVen/C-Macro-Collections) [Swaraj-Deep/data-structures-algorithms: Repository for data structures implementation in cpp](https://github.com/Swaraj-Deep/data-structures-algorithms) [Mouradouchane/data_structures: a collection of "data structures" using C++](https://github.com/Mouradouchane/data_structures) [Common libraries and data structures for C | Hacker News](https://news.ycombinator.com/item?id=31404201) [tezc/sc: Common libraries and data structures for C.](https://github.com/tezc/sc) [MikeRaphK/C-Data-Structures: A complete Data Structures library in C](https://github.com/MikeRaphK/C-Data-Structures) [GitHub - moritzrinow/cdata: Standard generic data structures for C99.](https://github.com/moritzrinow/cdata) [GitHub - msune/libcdada: Basic data structures in C: list, set, map/hashtable, queue... (libstdc++ wrapper)](https://github.com/msune/libcdada) ## data structures - java [bzdgn/data-structures-in-java: Data structures in detail with java implementations](https://github.com/bzdgn/data-structures-in-java) [nisabmohd/Data-Structures-Java: I've implemented a comprehensive set of generic data structures in Java, including arrays, linked lists, stacks, queues, trees, and more, ensuring versatility and efficiency in data handling.](https://github.com/nisabmohd/Data-Structures-Java) ## data structures - js [Data Structures in JavaScript - With Code Examples](https://www.freecodecamp.org/news/data-structures-in-javascript-with-examples) [functional-data-structure/persistent: Persistent data structures for JavaScript](https://github.com/functional-data-structure/persistent) [Functional data structures](https://github.com/functional-data-structure) [jayalbo/ESDS: ES6 Data Structures](https://github.com/jayalbo/ESDS) ## data structures [Data Structure Visualizations | Hacker News](https://news.ycombinator.com/item?id=27745184) [Data Structure Visualization](https://www.cs.usfca.edu/~galles/visualization/Algorithms.html) [List of data structures - Wikipedia](https://en.wikipedia.org/wiki/List_of_data_structures) [Purely Functional Data Structures (1996) [pdf] | Hacker News](https://news.ycombinator.com/item?id=36123651) [t.dvi - okasaki.pdf](https://www.cs.cmu.edu/~rwh/students/okasaki.pdf) ## data structures [Advanced Data Structures (2017) | Hacker News](https://news.ycombinator.com/item?id=20044876) [Advanced Data Structures (6.851)](https://courses.csail.mit.edu/6.851/fall17/) [Topics in Advanced Data Structures [pdf] | Hacker News](https://news.ycombinator.com/item?id=19780387) [Wayback Machine](https://web.archive.org/web/20190711054223/http://web.stanford.edu/class/cs166/handouts/100%20Suggested%20Final%20Project%20Topics.pdf) [Data Structures for Data-Intensive Applications [pdf] (2023) | Hacker News](https://news.ycombinator.com/item?id=39318774) [fnt23-athanassoulis.pdf](https://cs-people.bu.edu/mathan/publications/fnt23-athanassoulis.pdf) ## concurrent data structures [iiithf/concurrent-data-structures: A Concurrent data structure is a particular way of storing and organizing data for access by multiple computing threads (or processes) on a computer.](https://github.com/iiithf/concurrent-data-structures) ## conflict-free replicated data type (CRDT) [CRDT: Fractional Indexing | Hacker News](https://news.ycombinator.com/item?id=33764449) [CRDT: Fractional Indexing - Made by Evan](https://madebyevan.com/algos/crdt-fractional-indexing/) [Made by Evan](http://madebyevan.com/) [A Gentle Introduction to CRDTs | Hacker News](https://news.ycombinator.com/item?id=34746716) [A Gentle Introduction to CRDTs - vlcn.io](https://vlcn.io/blog/intro-to-crdts) [An interactive intro to CRDTs | Hacker News](https://news.ycombinator.com/item?id=37764581) [An Interactive Intro to CRDTs | jakelazaroff.com](https://jakelazaroff.com/words/an-interactive-intro-to-crdts/) ## graphs [Deep Dive Through A Graph: DFS Traversal | by Vaidehi Joshi | basecs | Medium](https://medium.com/basecs/deep-dive-through-a-graph-dfs-traversal-8177df5d0f13) [Going Broad In A Graph: BFS Traversal | by Vaidehi Joshi | basecs | Medium](https://medium.com/basecs/going-broad-in-a-graph-bfs-traversal-959bd1a09255) [From Theory To Practice: Representing Graphs | by Vaidehi Joshi | basecs | Medium](https://medium.com/basecs/from-theory-to-practice-representing-graphs-cfd782c5be38) [Spinning Around In Cycles With Directed Acyclic Graphs | by Vaidehi Joshi | basecs | Medium](https://medium.com/basecs/spinning-around-in-cycles-with-directed-acyclic-graphs-a233496d4688) [Graphviz Docs](https://www.graphviz.org/doc/info/attrs.html) Node, Edge and Graph Attributes [Graphviz Docs](https://www.graphviz.org/doc/info/colors.html) color names for graphviz, plantuml, etc... ## hash tables [Taking Hash Tables Off The Shelf. Truth time: learning about theoretical… | by Vaidehi Joshi | basecs | Medium](https://medium.com/basecs/taking-hash-tables-off-the-shelf-139cbf4752f0) ## js_typescript [GitHub - frptools/collectable: High-performance immutable data structures for modern JavaScript and TypeScript applications. Functional interfaces, deep/composite operations API, mixed mutability API, TypeScript definitions, ES2015 module exports.](https://github.com/frptools/collectable) ## lists - linked lists - js [How to Implement a Linked List in JavaScript](https://www.freecodecamp.org/news/implementing-a-linked-list-in-javascript) ## lists - linked lists [What's a Linked List, Anyway? [Part 1] | by Vaidehi Joshi | basecs | Medium](https://medium.com/basecs/whats-a-linked-list-anyway-part-1-d8b7e6508b9d) [What's a Linked List, Anyway? [Part 2] | by Vaidehi Joshi | basecs | Medium](https://medium.com/basecs/whats-a-linked-list-anyway-part-2-131d96f71996) [Linked Lists in Technical Interviews](https://www.freecodecamp.org/news/linked-lists-in-technical-interviews) ## protobuf [What is Protobuf? | AppMaster](https://appmaster.io/blog/what-is-protobuf) ## python - array-list [Rust-Data-Science/ulist: Ultra fast list/array for Python.](https://github.com/Rust-Data-Science/ulist) ## set theory [Set Theory: the Method To Database Madness | by Vaidehi Joshi | basecs | Medium](https://medium.com/basecs/set-theory-the-method-to-database-madness-5ec4b4f05d79) ## table - inode [What is inode in Linux? Everything You Need to Know](https://linuxhandbook.com/inode-linux)