Best of Data StructuresJuly 2024

  1. 1
    Article
    Avatar of hnHacker News·2y

    Data Structures Cheat Sheet

    This guide provides an introduction to data structures and their representation in Memgraph. It explains the basics of graphs, linked lists, queues, stacks, and trees, along with examples and queries to create these data structures using Memgraph. The document also discusses tree traversal algorithms like BFS and DFS and demonstrates how to run these algorithms in Memgraph.

  2. 2
    Article
    Avatar of javarevisitedJavarevisited·2y

    How to Prepare for Coding Interviews in 2024? (with Resources)

    In today's competitive job market, preparing for coding interviews requires a systematic approach. Key areas to focus on include Data Structures and Algorithms, High-Level Design (HLD), Low-Level Design (LLD), CS Fundamentals, and Behavioral questions. Utilize resources such as DesignGuru.io, notable books, video channels, and platforms like Leetcode, Codemia, and Pramp for comprehensive preparation. Mock interviews and company-specific preparation are also essential for success.

  3. 3
    Article
    Avatar of engineerscodexEngineer’s Codex·2y

    Good programmers worry about data structures and their relationships

    Good programmers focus on designing robust data structures and understanding their relationships, as emphasized by Linus Torvalds, the creator of Git and Linux. This approach makes software more reliable, easy to maintain, and scalable. Complex systems benefit greatly from well-thought-out data models, which simplify application logic and reduce the need for complex code. Prioritizing data structure design saves time and effort in the long run.

  4. 4
    Article
    Avatar of java_libhuntAwesome Java Newsletter·2y

    **🌟 Mastering the Java Collections Framework 🌟**

    The Java Collections Framework provides powerful data structures like Lists, Sets, and Maps, which allow for efficient data storage and manipulation. It offers flexibility with different implementations such as `ArrayList`, `HashSet`, and `HashMap`. Key components include ordered lists, unordered sets, and key-value pair maps. Pro tips include choosing the right collection type, ensuring thread safety, and utilizing Java 8+ features like Streams and Lambda expressions.

  5. 5
    Article
    Avatar of communityCommunity Picks·2y

    Heaps in JavaScript

    Heaps, also known as priority queues, are a type of tree data structure where every node satisfies the heap property, either as a max-heap or min-heap. Heaps are complete binary trees and can be efficiently represented using arrays. Key operations include adding and removing elements while maintaining the heap property. The time complexity for these operations is O(log(n)), while heapify has an asymptotic complexity of O(n). Converting a min-heap to a max-heap can be done by inserting negated keys.

  6. 6
    Article
    Avatar of java_libhuntAwesome Java Newsletter·2y

    TreeMap in Java: A Must-Know Data Structure

    TreeMap is a Red-Black tree-based implementation of the NavigableMap interface in Java, maintaining key-value pairs in sorted order. Unlike HashMap, TreeMap does not support null keys and has a time complexity of O(log n) for basic operations. It is ideal for scenarios requiring sorted data and efficient range operations, such as event logging, financial applications, scheduling, version control, caching, leaderboards, and spell checking. Key methods include `put`, `get`, `remove`, navigation methods like `firstKey`, `lastKey`, and range views like `headMap`, `tailMap`, and `subMap`.

  7. 7
    Article
    Avatar of lobstersLobsters·2y

    "Functional programming languages should be so much better at mutation than they are"

    Functional programming languages often struggle with mutation, leading to unnecessary overhead and complexity. The post explores various approaches to incorporate mutation in functional languages, such as allowing mutable data structures, locally limited mutations, linearity, and functional but in-place data structures. Each approach comes with its own set of challenges, and the search for a robust solution continues.