Explore algorithms for rotating two-dimensional matrices.

### Also find me here:

# Baeldung Author

## Rafael Engibaryan

I'm a software architect and engineer. My main experience is in desktop development and system programming using C++ tech stack, and web back-end development in Java and Python ecosystems. I'm very passionate about math, algorithms, data structures, and software architecture.

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

## Baeldung on Computer Science

- All
- Trees (5)
- Data Structures (5)
- Sorting (2)
- Searching (2)
- Graphs (2)
- Graph Traversal (2)
- Path Finding (1)
- Networking (1)
- Math and Logic (1)
- Algorithms (1)

### Patience Sort Algorithm

Filed under Sorting

Explore the patience sort algorithm.

### Ukkonen’s Suffix Tree Algorithm

Filed under Data Structures, Searching

Explore Ukkonen’s algorithm for building suffix trees in linear time.

### Finding Strongly Connected Components: Tarjan’s Algorithm

Filed under Graphs

Learn about the Tarjan’s algorithm for finding strongly connected components in directed graphs.

### Tournament Sort Algorithm

Filed under Sorting

Explore the tournament sort algorithm.

### Network Flow: Edmonds-Karp Algorithm

Filed under Networking

Learn about the Edmonds-Karp algorithm for finding the maximum flow in network graphs.

### Guide to Splay Trees

Filed under Trees

Learn about the Splay Tree data structure.

### All-Pairs Shortest Paths: Johnson’s Algorithm

Filed under Graph Traversal, Path Finding

Learn about the Johnson’s algorithm.

### Level-order Traversal of Binary Tree

Filed under Graph Traversal, Trees

Learn about the level-order traversal of binary trees.

### Difference Between Segment Trees, Interval Trees, Range Trees, and Binary Indexed Trees

Filed under Data Structures, Trees

Explore the differences between segment trees, binary indexed trees, interval trees, and range trees.

### The Ternary Search Tree Data Structure

Filed under Data Structures, Trees

Study the fundamentals of ternary search trees.

### Representing Max Heap in an Array

Filed under Algorithms, Data Structures

Learn how to use an array for Max Heap representation.

### Finding Strongly Connected Components: Kosaraju’s Algorithm

Filed under Graphs

Explore the Kosaraju’s algorithm for finding strongly connected components in a graph.

### Array Implementation of Stacks

Filed under Data Structures

Learn how to implement a stack using the fixed-size array representation.

### Skip List Comparison with Binary Search Tree

Filed under Searching

Compare skip lists and balanced binary search trees using various criteria.

### Disjoint Set Union Data Structure

Filed under Trees

Learn about the disjoint set union data structure, along with some key optimizations for it.