Learn about stack structures for fast lookup.

### Also find me here:

# Baeldung Author

## Gang Wu

Gang Wu has over 15 years of experience as a software developer in multiple industries. He is proficient in software design and implementation with various programming languages, such as Java, C++, C#, etc. For the past five years, he has been working on web applications with Java technologies. When he is not writing code, he enjoys playing games and watching movies with his family.

## Here's what I've written (so far):

## Baeldung on Computer Science

- All
- Data Structures (8)
- Algorithms (8)
- Trees (5)
- Searching (2)
- Math and Logic (2)
- Graphs (2)
- Programming (1)
- Path Finding (1)
- Latex (1)
- Graph Traversal (1)
- Graph Theory (1)
- Artificial Intelligence (1)

### Understanding Fenwick Tree (Binary Indexed Tree)

Filed under Data Structures

Learn more about Fenwick Trees.

### Understanding Sparse Tables

Filed under Data Structures

Learn about sparse tables in detail.

### Hash Table vs. Trie (Prefix Tree)

Filed under Data Structures

Learn how to solve problems with hash tables and tries.

### Vertical and Horizontal Tables in LaTeX

Filed under Latex

Learn how to create different types of LaTeX tables.

### Graph Adjacency and Incidence

Filed under Graphs

Learn how to represent graphs with Adjacency and Incidence

### Finding Arrangements of Blocks With L Left Visible Blocks and R Right Visible Blocks

Filed under Algorithms

Learn about a classic problem to find the possible arrangments of blocks to make L visible from the left and R from the right.

### Finding the Largest Balanced Subarray

Filed under Searching

Learn how to find the largest balanced subarray.

### Finding Three Elements in an Array Whose Sum Is Closest to a Given Number

Filed under Data Structures, Math and Logic

Learn how to find three elements in an array such that the sum is closest to a given number.

### Calculate the Number of Binary Search Trees with N Distinct Elements

Filed under Algorithms, Searching

Learn how to calculate the number of possible binary trees from the number of nodes.

### Number of Nodes in a Binary Tree With Level N

Filed under Graph Traversal, Trees

Learn how to calculate the minimum and maximum number of nodes in binary trees

### Print All Paths With a Given Sum in a Binary Tree

Filed under Trees

Learn how to construct a binary tree path sum sequence in linear time

### Polynomial Addition and Multiplication Using Linked List

Filed under Data Structures, Math and Logic

Learn how to represent a polynomial with the linked list data structure.

### Serialize and Deserialize a Binary Tree

Filed under Graph Theory, Trees

Learn algorithms to serialize and deserialize a binary tree

### Comparison Between Uniform-Cost Search and Dijkstra’s Algorithm

Filed under Path Finding

Learn how to use both Dijkstra’s algorithm and the uniform-cost search algorithm to find the shortest paths between vertices in a graph

### String Similarity Metrics – Edit Distance

Filed under Algorithms, Artificial Intelligence

Learn about the ways to quantify the similarity of strings

### Algorithms to Check if a Linked List Is a Circular Linked List

Filed under Algorithms, Data Structures

Learn two linear-time algorithms that can check if a linked list is a circular linked list

### How to Reverse a Linked List

Filed under Algorithms, Programming

Have a look at the algorithm for reversing a linked list.

### How to Check If a Binary Tree Is Symmetric?

Filed under Data Structures, Trees

Learn how to check whether a binary tree structure is symmetric, using either a recursive solution or an iterative approach.

### Topological Sort of Directed Acyclic Graph

Filed under Algorithms, Data Structures, Graphs

Learn how to make a topological sort on a DAG in linear time

### Minimum Spanning Tree vs Shortest Path Tree

Filed under Algorithms, Trees

Learn the difference between Minimum Spanning Trees and Shortest Path Trees