Implement fast data structures in modern C++ by examining the variations and trade-offs. Make optimal use of the standard C++ containers. Exploit low-level blocks of contiguous memory for cache locality and memory efficiency.
Table of Part Optimization Techniques 1. Data Structures Overview 2. Modern C++ Containers 3. Move Semantics 4. String Optimizations 5. Object Instrumentation 6. Timing and Benchmarking 7. AVX SIMD Vectorization 8. Memory Optimizations Part Contiguous Data Structures 9. Arrays 10. Pointer Arithmetic 11. Contiguous Memory Blocks 12. Loop Optimizations 13. Parallel Vectorization 14. Lookup Tables & Precomputation Part Multidimensional Data Structures 15. Matrix Multiplication 16. Tensors Part Advanced Data Structures 17. Algorithm Speedups 18. Vector Algorithms 19. Perfect Hashing 20. Memory Pool Optimizations 21. Fast Ring Buffers 22. AI Data Structures Appendix 1. Source Code