輕鬆學算法的祕密!可視化算法網站彙總!(附動圖)

對於「算法」的第一印象,我相信大部分人都是一樣的,就是一個“難”字了得。

而我比較特殊,我的第一印象、第二印象以至第 N 印象都覺得很難,所以爲了更好的學習和理解算法,我千金一擲一下買了一堆的算法書,有圖爲證:

但說實話,效果不是很好,於是磊哥就琢磨有沒有更簡單的學習算法的方法?沒想到還真被我找到了,真實應了那句老話“瞎貓碰到死耗子”,呸、不對,是“苦心人天不負”。

那究竟如何輕鬆的學習算法呢?答案就是下面要介紹的這幾個網站。

有了這幾個網站就可以讓你以動畫的形式,看到算法的具體執行過程和數據的具體結構,還有算法的文字講解以及算法的具體實現代碼,接下來一起來看吧。

DataStructureVisualizations

一個數據可視化和算法可視化的網站,用它可以生成各種各樣的數據結構,模擬它們添加和刪除的過程,而且還可以用它來演示算法的執行過程。

內容演示

比如,我們用它來模擬一個二叉搜索樹,如下圖所示:

我們再用它來演示一下快速排序算法,如下圖所示:

網站特點

Data Structure Visualizations 包含了很多的內容,如:常見的數組、鏈表、隊列、二叉搜索樹、紅黑樹、各種排序等,如下圖所示:

訪問地址

https://www.cs.usfca.edu/~galles/visualization/Algorithms.html

VisuAlgo

此網站包含了更多的算法,這個從首頁就可以看出來,不僅如此,它還支持關鍵字檢索,如下圖所示:

此網站除了可以以動畫的方式演示算法之外,還包含了算法的文字講解,如下圖所示:

內容演示

接下來我們演示一下冒泡排序的執行過程,如下圖所示:

網站特點

  • 提供了算法檢索功能

  • 更多的算法支持

  • 可自定義測試數據

  • 文字講解

  • ......

訪問地址

https://visualgo.net/zh

algorithm-visualizer

此網站也支持很多算法,並且此網站提供算法的具體代碼實現,它支持的語言有:Java,C++,JS 等,還有控制檯也會輸出整個執行的過程,能幫你更好的理解算法,如下圖所示:

內容演示

我們用它來演示一下冒泡排序的執行過程,如下圖所示:

網站特點

  • 算法可視化

  • 算法的具體實現代碼(支持 Java、C++、JS 等語言)

  • 控制檯執行步驟輸出(幫助你更好的理解算法)

  • ......

訪問地址

https://algorithm-visualizer.org/

總結

有了這些可視化工具之後,我們就可以更簡單的學習算法了,這三個網站各有春秋,你可以使用 Data Structure Visualizations 來了解數據結構,使用 VisuAlgo 和 algorithm-visualizer 來查看算法的具體執行過程,並使用 algorithm-visualizer 來查看算法的具體實現代碼,真是非常方便,趕快去試試吧。

最後的話原創不易,都看到這了,點個「在看」再走唄,這是對我最大的支持與鼓勵,謝謝你!

往期推薦

阿里《Java開發手冊》中的 1 個bug!

駁《阿里「Java開發手冊」中的1個bug》?

關注下方二維碼,每一天都有乾貨!

點亮“在看”,助我寫出更多好文!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章