Best of Data Structures2025

  1. 1
    Video
    Avatar of youtubeYouTube·1y

    I was bad at Data Structures and Algorithms. Then I did this.

    Andrew shares a detailed roadmap on how he learned data structures and algorithms from scratch. Despite not having a computer science degree, he self-taught these concepts using free online resources and various courses, and now works as a software engineer. He emphasizes the importance of Big O notation, recommends resources like YouTube tutorials and certain books, and advises on practical coding practice with platforms like CodeWars and LeetCode. He also suggests using ChatGPT for additional help and maintaining a fun and consistent learning approach.

  2. 2
    Article
    Avatar of cassidooCassidy's blog·36w

    I made a tree visualizer

    A developer created a standalone web application for visualizing tree data structures, originally used for teaching React component hierarchies and concepts like prop drilling and context. The tool features keyboard shortcuts for node manipulation, visual effects like pulsing and drilling arrows, and the ability to save tree diagrams as images for sharing.

  3. 3
    Video
    Avatar of youtubeYouTube·1y

    How to Start LeetCode from ZERO in 2025

    LeetCode remains essential for coding interviews at major tech companies like Amazon, Google, and Microsoft. To start effectively, focus on understanding basic data structures and algorithms, and practice solving problems consistently. Start with easy problems and gradually tackle medium-level ones. Utilize available resources, avoid rushing through problems, and learn from each solution. Consistent practice and revisiting old problems help retain knowledge and improve problem-solving skills.

  4. 4
    Article
    Avatar of communityCommunity Picks·1y

    Computer Science for Frontend Developers

    Discusses the importance of computer science fundamentals for frontend developers, debating whether knowledge of data structures and algorithms is necessary. Provides a nuanced perspective, suggesting developers understand basic concepts to optimize performance when needed, especially with graphics or animations. The post also includes a simple roadmap for learning key concepts and recommends resources for further education.

  5. 5
    Article
    Avatar of freecodecampfreeCodeCamp·51w

    LeetCode Meditations: A Visualized Tour of DSA Concepts (A Handbook)

    A comprehensive handbook covering fundamental data structures and algorithms concepts through visual explanations and code examples. Topics include arrays, hash tables, two pointers technique, sliding window, stacks, binary search, linked lists, trees, heaps, and backtracking. Each concept is explained with practical implementations in JavaScript, TypeScript, and Python, along with time and space complexity analysis. The guide emphasizes understanding core principles rather than memorizing specific problem solutions.

  6. 6
    Article
    Avatar of javarevisitedJavarevisited·1y

    8 Best Data Structures and Algorithms Books for Software Engineers and Developers

    Data structures and algorithms are fundamental to solving programming problems, and mastering them is crucial for any programmer. This post lists eight top-rated books that provide comprehensive, practical, and engaging methods to learn these crucial concepts. The books include illustrated guides, detailed examples, interview preparation material, and are paired with relevant online courses to enhance the learning experience for both beginners and experienced programmers.

  7. 7
    Article
    Avatar of bytebytegoByteByteGo·42w

    EP174: 16 Coding Patterns That Make Interviews Easy

    A comprehensive guide covering 16 essential coding patterns for technical interviews, including two-pointer technique, sliding window, dynamic programming, and graph algorithms. Also provides a structured learning path for mastering databases, explains how HTTPS works with encryption protocols, and traces Netflix's scaling evolution from monolith to microservices architecture.

  8. 8
    Article
    Avatar of javarevisitedJavarevisited·1y

    Master Coding Interview Preparation in 2025 with These 15 Patterns

    Preparing for coding interviews in 2025 is made easier by mastering 15 key coding patterns. These patterns streamline the problem-solving process, helping you tackle various interview challenges efficiently. They include techniques like Two Pointers, Sliding Window, and Dynamic Programming. Rather than spending time on countless LeetCode problems, focusing on these patterns can optimize your preparation and increase your chances of success.

  9. 9
    Article
    Avatar of freecodecampfreeCodeCamp·49w

    How to Work with Queues in TypeScript

    A comprehensive guide to implementing different types of queues in TypeScript using circular doubly linked lists. Covers simple queues, circular queues, double-ended queues (deque), and priority queues with complete code implementations. Explains FIFO principles, queue operations like enqueue/dequeue, and provides practical examples with test cases. Also discusses when to use queues versus other data structures and potential pitfalls in production systems.

  10. 10
    Article
    Avatar of kirupaKirupa·1y

    Hash Functions Deep Dive

    Hash functions are essential for efficient data storage and retrieval, password verification, file integrity checking, and digital signatures. This deep dive explains the fundamentals of hash functions, their inputs and outputs, and the criteria that make a good hash function. It also demonstrates how to create a simple hash function in JavaScript and improves it using position weighting. The importance of using existing, well-designed hash functions like MD5 and SHA for critical purposes is emphasized.

  11. 11
    Article
    Avatar of francofernandoThe Polymathic Engineer·1y

    Advent Of Code

    Participating in Advent Of Code challenges can significantly improve problem-solving skills and coding efficiency. The event offers unique programming puzzles that get more challenging over time. Key strategies include creating a starting template, using example data to guide solutions, and breaking down complex problems. Understanding essential algorithms and data structures, especially those related to graphs, is crucial. Taking breaks and creating additional test cases can help when stuck. Overall, engaging in these challenges fosters community interaction and continuous learning.

  12. 12
    Article
    Avatar of freecodecampfreeCodeCamp·31w

    Master Technical Interviews by Learning Data Structures and Algorithms

    A comprehensive 49-hour course covering data structures and algorithms for technical interview preparation. The course teaches fundamental concepts including time and space complexity analysis with Big O notation, and covers major data structures (arrays, linked lists, stacks, queues, trees, graphs) and algorithm patterns (sliding window, two pointers, dynamic programming, backtracking, greedy algorithms). Created by Parth Vyas and available on freeCodeCamp's YouTube channel.

  13. 13
    Article
    Avatar of collectionsCollections·44w

    Mastering Data Structures and Algorithms for Coding Interviews

    A comprehensive guide covering essential data structures and algorithms needed for coding interview success. Key topics include arrays, hashmaps, linked lists, binary search, graph traversal algorithms, and dynamic programming. The guide emphasizes pattern recognition over random problem solving, recommending a structured approach of mastering 100-150 problems across common coding patterns like sliding window and two pointers.

  14. 14
    Article
    Avatar of francofernandoThe Polymathic Engineer·45w

    How to Tackle Coding Interviews

    A structured 7-step framework for succeeding in coding interviews: listen carefully to understand the problem, create meaningful examples, start with brute force solutions, optimize using BUD methodology (bottlenecks, unnecessary work, duplicated work), walk through the algorithm before coding, write clean modular code with descriptive variables, and thoroughly test the solution. The approach emphasizes communication, systematic problem-solving, and demonstrating debugging skills when issues arise.

  15. 15
    Article
    Avatar of communityCommunity Picks·1y

    The Ultimate Strategy to Solve Any Coding Problem

    This comprehensive guide provides a step-by-step strategy for effectively solving any coding problem. Key steps include understanding the problem thoroughly, breaking it down into inputs, outputs, and requirements, designing an approach with both brute force and optimization techniques, writing a plan before coding, implementing a clean and modular solution, testing with diverse cases, and continuously optimizing and practicing problem-solving skills.

  16. 16
    Article
    Avatar of itnextITNEXT·1y

    The Hidden Cost of JS Arrays

    JavaScript arrays might appear efficient initially but can perform poorly with large datasets due to the nested operations. By replacing `Array.includes` with data structures like `Set`, `Map`, or indexed arrays, you can achieve constant-time lookups, significantly improving performance.

  17. 17
    Video
    Avatar of fireshipFireship·1y

    5 weird (but useful) data structures in computer science

    The post explores five unusual but useful data structures that go beyond the basic ones commonly known in computer science: B trees, radix trees, ropes, Bloom filters, and cuckoo hashing. Each data structure offers unique advantages in handling specific problems, such as reducing search complexity, efficiently managing large strings, and resolving hash table collisions. Additionally, a new VS Code extension by Code Rabbit is introduced, enhancing code review processes.

  18. 18
    Article
    Avatar of freecodecampfreeCodeCamp·1y

    Recursive Types in TypeScript: A Brief Exploration

    Exploring recursive types in TypeScript, the post highlights how they work in the type world, similar to recursive functions in the value world. It delves into how these types can apply to data structures like trees and linked lists, extends utility types, and unwraps multidimensional arrays. It also discusses the power and cautionary aspects of using recursive types, emphasizing responsible use due to potential compile-time errors and slower type-checking.

  19. 19
    Article
    Avatar of sitepointSitePoint·1y

    Learn Data Structures and Algorithms: Complete Tutorial

    Data Structures and Algorithms (DSA) are essential for efficient programming and form the backbone of modern computer science. Mastering both linear and non-linear data structures enables developers to handle diverse scenarios effectively. Techniques such as divide-and-conquer, dynamic programming, and greedy algorithms are crucial for solving complex problems efficiently. Understanding DSA is vital for building scalable applications and excelling in technical interviews. The post also discusses the latest trends like quantum algorithms, AI-driven data structures, and blockchain optimizations.

  20. 20
    Video
    Avatar of bigboxswebigboxSWE·23w

    Programming principles that altered my brain chemistry

    Three core programming principles can improve code quality: avoid overusing null by rethinking design and using proper types instead of raw primitives; choose appropriate data structures (like enums and classes) to make algorithms naturally follow and code more maintainable; and prioritize writing clear, readable code for humans over clever one-liners. These principles, inspired by legendary programmers like Tony Hoare and Rob Pike, emphasize simplicity as the key to managing programming complexity.

  21. 21
    Video
    Avatar of developedbyeddevelopedbyed·44w

    Leetcode is not scary, it's actually really fun

    LeetCode problems are actually enjoyable brain training exercises rather than scary interview hurdles. The key is approaching them as puzzles that build problem decomposition skills applicable to real-world programming. Starting with structured roadmaps like arrays and hashing, then gradually building intuition through practice makes the experience rewarding. Three classic problems demonstrate different approaches: two-sum shows optimization from O(n²) to O(n) using hash maps, contains duplicate leverages sets for efficient lookups, and valid anagram can be solved through character counting or string sorting techniques.

  22. 22
    Article
    Avatar of medium_jsMedium·48w

    The 5 Most Surprising, Ingenious Data Structures and What They Actually Do

    Explores five advanced data structures that solve complex problems beyond basic arrays and lists: B-Trees for efficient database storage with shallow depth, Radix Trees for fast prefix-based lookups in routing, Ropes for efficient text editing in large documents, Bloom Filters for probabilistic membership testing at scale, and Cuckoo Hashing for constant-time operations using eviction strategies. Each structure addresses specific performance challenges in real-world systems.

  23. 23
    Article
    Avatar of javarevisitedJavarevisited·36w

    25 Google Interview Questions for Software Engineers(with Resources)

    A comprehensive collection of 25 technical interview questions commonly asked at Google for software engineering positions, organized into categories including data structures and algorithms, networking and operating systems, software design, coding and programming, and behavioral questions. The post includes specific examples like finding elements in circular sorted arrays, implementing hash tables, designing distributed systems, and solving coding challenges. It also recommends preparation resources including books like 'Introduction to Algorithms' and platforms like ByteByteGo for system design practice.

  24. 24
    Article
    Avatar of francofernandoThe Polymathic Engineer·1y

    Hashing in Coding Interviews

    Hash tables and sets are essential data structures for coding interviews due to their efficiency in checking existence and counting elements. They can optimize solutions by improving algorithm time complexity, often reducing it from O(n^2) to O(n). While these structures involve space-time trade-offs, their ability to handle large inputs and constraints efficiently makes them invaluable in software engineering challenges.

  25. 25
    Article
    Avatar of javarevisitedJavarevisited·42w

    Why ByteByteGo is Best Website to Practice Coding Interview Questions and Patterns in 2025?

    ByteByteGo has evolved from a system design resource into a comprehensive coding interview platform featuring 19 essential coding patterns that cover 95% of interview questions. The platform now offers interactive coding practice with an in-browser IDE, real-time feedback, and 101 curated problems organized by patterns like two pointers, sliding window, binary search, and dynamic programming. Unlike random problem grinding on other platforms, ByteByteGo focuses on pattern recognition and structured learning, making interview preparation more efficient for developers targeting FAANG and top-tier tech companies.