Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/vickttor/data_structure_and_algorithms_with_java

Learning Data Structure and Algorithms by using Java
https://github.com/vickttor/data_structure_and_algorithms_with_java

algorithms bigonotation data-structures java

Last synced: about 2 months ago
JSON representation

Learning Data Structure and Algorithms by using Java

Awesome Lists containing this project

README

        

## Data Structure and Algorithms with Java

[Book to Learn Java Language (in Brazilian portuguese)](https://www.caelum.com.br/apostila/apostila-java-orientacao-objetos.pdf)

Learning data structure and algorithms with java by using a Youtube video from
`@Bro Code` channe. The link access is the follows: [Learn Data Structures and Algorithms for free](https://youtu.be/CBYHwZcbD-s)

### Data Structures:

- [Stack](./src/structure/MStack.java)
- [Queues](./src/structure/MQueue.java)
- [Priority Queues](./src/structure/MPriorityQueue.java)
- [Linked List](./src/structure/MLinkedList.java)
- [Dynamic Arrays](./src/structure/MDynamicArray/MDynamicArray.java)
- [Linked List vs Array lists](./src/structure/LinkedListVsArrayList.java)
- [hash tables](./)
- [Graphs](./)
- [Adjacency Matrix](./)
- [Adjacency List](./)
- [Tree](./)

### Concepts

![Big O Notation Introduction](./src/concepts/BigONotation-intro.jpeg)
![Big O Notation Speed variants](./src/concepts/BigONotation-speed_variants.jpeg)
![How to shift elements in Dynamic Array](./src/concepts/shiftItemsInDynamicArray.png)

- [Recursion](./)
- [Calculation Execution Time](./)

### Algorithms

- [Linear Search](./src/algorithms/MLinearSearch.java) `O(n)`
- [Binary Search](./src/algorithms//MBinarySearch.java) `O(log n)`
- [Interpolation Search](./src/algorithms/MInterpolationSearch.java) `O(log(log(n)))`
- [Bubble Sort](./src/algorithms/MBubbleSort.java) `O(n^2)`
- [Selection Sort](./src/algorithms/MSelectionSort.java) `O(n^2)`
- [Insertion Sort](./) `O(n^2)`
- [Merge Sort](./)
- [quick Sort](./) `O(n log n)`
- [Depth First Search](./)
- [Breadth First Search](./)
- [Tree Binary Search](./)
- [Tree Transversal](./)

## Folder Structure

The workspace contains two folders by default, where:

- `src`: the folder to maintain sources
- `lib`: the folder to maintain dependencies

Meanwhile, the compiled output files will be generated in the `bin` folder by default.

> If you want to customize the folder structure, open `.vscode/settings.json` and update the related settings there.

## Dependency Management

The `JAVA PROJECTS` view allows you to manage your dependencies. More details can be found [here](https://github.com/microsoft/vscode-java-dependency#manage-dependencies).