The author | ithuangqing

Outside source | coding (ID: ithuangqing)

As every computer learning college students, the most difficult than learning data structures and algorithms, why ah?

Clearly know data structure and algorithm is very important, but just can’t learn, mention it big head, headache have……

I don’t know about you, but I did, and from what I’ve learned, it seems like most programmers do.

When we first started college, it was really hard to learn data structures and algorithms, right? Even if you are very smart, it must be a little hard to study. Now I think there are two reasons for our poor data structure and computational science in college:

  1. At that time, our scope of knowledge was too narrow and our study was rigid. We did not know how to find all kinds of auxiliary learning materials, so we felt it was very difficult and could not handle it by ourselves.
  2. Most teachers just follow the book and don’t know to teach or share anything else…

So ah, we are no accident in the university when the data structure and algorithm to fall behind, of course, there is no lack of those who learn good, we these scum, can only watch their school recruitment into the big factory, and then fantasy that they walked on the peak of life, win baifumei……

In fact, data structure and algorithm itself is indeed difficult, but ye, as long as we are willing to work hard, spend more time to learn and practice, it is not a problem to learn data structure and algorithm, of course, if coupled with the support of these websites, you will learn it more handy

Learning algorithms will go to a website

First of all, there is a website that every data structure and algorithm must go to, name it and you will know, that is the famous LeetCode, that is: https://leetcode.com/

Because this website is really great cup, so now there is a domestic version is the Chinese version of “force button”, you open https://leetcode.com/ will automatically jump to here:

Click explore to show you

Insert a picture description here

We all have one! Don’t cheat you!

Those visual websites

We are learning data structure and algorithm, the reason why we feel more difficult, a large part of the data structure and algorithm is abstract, we understand it is more difficult, so ah, One of the best ways to understand data structures and algorithms is to see them in action, and we can reinforce this understanding with some visual animations. The following sites are all visual sites that allow you to visually observe data structures and algorithms.

Data Structure Visualizations

Data Structure Visualizations

It looks like this:

Maybe some people say that they don’t understand, it’s ok, I’ll give you a look:

Binary search tree: binary search tree: binary search tree

You can try it yourself and be sure to use it!

visualgo

Link to: https://visualgo.net/zh

Insert a picture description here

Look at the heart? Let’s continue to look at the operation:

Insert a picture description here

Go and try it yourself!

BinaryTreeGraph

Direct link:

This is primarily a balanced tree the visualization of the operation, I often use this web site, it’s really good, there is a corresponding open source projects, is to print binary tree, interested can look at: https://github.com/CoderMJLee/BinaryTrees

BinaryTreeVisualiser

Link directly to: http://btv.melezinek.cz/home.html

Insert a picture description here

This is mostly binary tree related, like binary search trees, and if you look at it, it looks like this:

Operation is actually very simple, you can have a try!

btree-js

Link directly to: https://yangez.github.io/btree-js/

This is a special demonstration of B tree, also good!

Algorithm Visualizer

Link to: https://algorithm-visualizer.org/

This is one of my favorites, this is a cow cup guy, let me show you:

Does it look very professional? Lol

See, this is mainly an algorithm visualization site, mainly is to explain various algorithms, really great, it can support code, js, Java and c++, such as my Java here

The associated Java code should then appear on the right:

Then we can click here to run:

Just ask you strong is not strong, hurry to try it!

Algorithm analysis of relevant websites

bigocheatsheet

Link directly to: https://www.bigocheatsheet.com/

Give you this picture should know what it is for, quickly collect it, very useful, really really……

Let’s move on…

Algorithms-DataStructures-BigONotation

Link directly to: http://cooervo.github.io/Algorithms-DataStructures-BigONotation/index.html

This is also a site where you can view algorithm analysis, but there is more to it than that:

This is up to you to explore!

Small eggs

For those of you who are new to data structures and algorithms, the big 0 notation is confusing at first. Here’s a hot answer on Stack Overflow.

https://stackoverflow.com/questions/487258/what-is-a-plain-english-explanation-of-big-o-notation

Thank you very much for reading

In addition, you can get free Java collection, JVM, multi-threaded concurrency, Spring principle, micro services, Netty and RPC, Kafka, diary, design pattern, Java algorithm, database, Zookeeper, distributed cache, data structure and a series of architecture information