关于前端:GitHub上最火的最值得前端学习的几个数据结构与算法项目没有之一

5次阅读

共计 3571 个字符,预计需要花费 9 分钟才能阅读完成。


Hello,大家好,我是你们的 前端章鱼猫。

简介

前端章鱼猫从 2016 年退出 GitHub,到当初的 2020 年,快整整 5 个年头了。

置信很多人都没有逛 GitHub 的习惯,因而总会有开源信息的不对称,有哪些优良的前端开源我的项目值得学习的也不晓得。

从 2018 年开始,我就养成了每天逛 GitHub 的习惯,个别在早上下班前或者中午午休的时候都会逛一下。

看看每天都开源了哪些好的前端我的项目,还有用到的支流前端技术栈又是哪些,值得我去学习的。

因而也珍藏了不少好的开源我的项目,在此举荐给大家,每周会有一到三篇的文章推送。

心愿你在浏览、学习了前端章鱼猫举荐的这些开源我的项目的过程中,你能学习到更多编程常识、进步编程技巧、找到编程的乐趣。

【前端 GitHub】,专一于开掘 GitHub 上优良的前端开源我的项目,抹平你的前端信息不对称,涵盖 JavaScript、Vue、React、Node、小程序、Flutter、Deno、HTML、CSS、数据结构与算法 等等。

以下为【前端 GitHub】的第二期内容。

前言

算法为王。

想学好前端,先练好内功,内功不行,就算招式练的再花哨,究竟成不了高手;只有内功深厚者,前端之路才会走得更远。

本文举荐几个 GitHub 上值得前端学习的数据结构与算法我的项目,蕴含 gif 图的演示过程与视频解说。

数据结构与算法

对于数据结构与算法的 GitHub 我的项目,star 数由高到低排序。

javascript-algorithms

https://github.com/trekhleb/javascript-algorithms

该仓库蕴含了多种基于 JavaScript 的算法与数据结构。

每种算法和数据结构都有本人的 README,蕴含相干阐明和链接,以便进一步浏览 (还有 YouTube 视频)。

数据结构蕴含了 链表、双向链表、队列、栈、哈希表 (散列)、堆、优先队列、字典树、树、优先队列、二叉查找树、AVL 树、红黑树、线段树、树状数组、图、并查集、布隆过滤器

算法蕴含了 算法主题 和 算法范式。

其中算法主题又蕴含了:数学、汇合、字符串、搜寻、排序、链表、树、图、加密、机器学习。

算法范式:算法范式是一种通用办法,基于一类算法的设计。这是比算法更高的形象,就像算法是比计算机程序更高的形象。

算法范式蕴含了:BF 算法、贪婪法、分治法、动静编程、回溯法、Branch & Bound 等等。

这我的项目还出了对应的教学视频,总共 81 个视频解说,每个视频大略 5 – 10 分钟左右,还能学习英语哦 ????

youtube 的教学视频:https://www.youtube.com/playl…

前端章鱼猫之前学习算法的时候,也在这个我的项目中收益良多呢!

而且这个我的项目还始终有保护和更新内容哦!真的十分不错的一个我的项目!


algorithm-visualizer

https://github.com/algorithm-visualizer/algorithm-visualizer

算法可视化工具是一个交互式的在线平台,能够从代码中可视化算法。

通过可视化办法学习算法变得容易得多。

Algorithm Visualizer 是一款乏味的在线开源工具,内含多种算法并进行了直观可视化出现, 让学习算法和数据结构更加直观。

目前反对的算法包含回溯法、加密算法、动静布局、图搜寻、贪心算法、搜索算法、排序算法等。

Algorithm Visualizer 的目录区,抉择任何算法,两头就会动静演示,日志输出区记录每次搜寻的过程。

该算法可视化工具是一个用 React 编写的 web 应用程序。它蕴含 UI 组件并将命令解释为可视化。

如果你是算法初学者,强烈推荐这个「算法可视化」工具 Algorithm Visualizer,很清晰地绘制了每一个根底算法的原理和运作流程。


algo

algo: https://github.com/wangzheng0822/algo

数据结构和算法必知必会的 50 个代码实现。

蕴含数组、链表、栈、队列、递归、排序、二分查找、散列表、字符串、二叉树、堆、图、回溯、分治、动静布局 等。

每个代码实现有解释,测试用例。

// 抉择排序
const selectionSort = (arr) => {if (arr.length <= 1) return
    // 须要留神这里的边界, 因为须要在内层进行 i+ 1 后的循环,所以外层须要 数组长度 -1
    for (let i = 0; i < arr.length - 1; i++) {
        let minIndex = i
        for (let j = i + 1; j < arr.length; j++) {if (arr[j] < arr[minIndex]) {minIndex = j // 找到整个数组的最小值}
        }
        const temp = arr[i]
        arr[i] = arr[minIndex]
        arr[minIndex] = temp
    }
    console.log(arr)
}

const test = [4, 5, 6, 3, 2, 1]
bubbleSort(test)
const testSort = [4, 1, 6, 3, 2, 1]
insertionSort(testSort)
const testSelect = [4, 8, 6, 3, 2, 1, 0, 12]
selectionSort(testSelect)

该仓库是《数据结构和算法之美》《设计模式之美》专栏作者创立的,前端章鱼猫也学习过他的《数据结构和算法之美》,十分不错的学习教程。


awesome-algorithms

https://github.com/mgechev/javascript-algorithms

此存储库蕴含不同驰名计算机科学算法的 javascript 实现。

该仓库是不错的,不不便学习的中央就是须要装置依赖并运行能力看到成果及文档。

Call:

npm install

To setup repository with documentation

npm run doc

This will build the documentation and open it in your browser.

JS-Sorting-Algorithm

https://github.com/hustcc/JS-Sorting-Algorithm

一本对于排序算法的 GitBook 在线书籍《十大经典排序算法》,应用 JavaScript & Python & Go & Java 实现。

蕴含冒泡排序、抉择排序、插入排序、希尔排序、归并排序、疾速排序、堆排序、计数排序、桶排序、基数排序。

该仓库的文章有定义有解释、有代码实现、还有动态图,入门十大经典排序算法是个不错的教程。


JavaScript 数据结构与算法之美

https://github.com/biaochenxu…

蕴含了 十大经典排序算法 的思维、代码实现、一些例子、复杂度剖析、动画、还有算法可视化工具。

这是比拟精简的 JavaScript 数据结构与算法 的解说。

该仓库总共写了 10 篇算法入门的文章

  1. 工夫和空间复杂度
  2. 线性表(数组、队列、栈、链表)
  3. 实现一个前端路由,如何实现浏览器的后退与后退?
  4. 栈内存与堆内存、浅拷贝与深拷贝
  5. 递归
  6. 非线性表(树、堆)
  7. 冒泡排序、抉择排序、插入排序
  8. 归并排序、疾速排序、希尔排序、堆排序
  9. 计数排序、桶排序、基数排序
  10. 十大经典排序算法汇总
  11. GitHub 上 170K+ Star 的前端学习的数据结构与算法我的项目

也是十分不错的数据结构与算法的入门学习材料。


daily-algorithms

https://github.com/barretlee/…

算法,每日练习的一个我的项目。

  • ★ 示意 easy,★★ 示意 medium,★★★ 示意 hard;
  • 题目次要来自 leetcode,可能会适当变换题设,扭转难度;
  • 对于 ★ 和 ★★ 难度的题目,每天的量会随机呈现 1~5 个,尤其是 ★ 的题目,比较简单。

白天出题,尽量早晨给出参考答案。

我的项目也不错,是以参加探讨的模式与大家一起学习数据结构与算法的。

就是内容积攒还不够多,还不够火。


JavaScript 更多 …

https://github.com/search?l=JavaScript&o=desc&q=algo&s=stars&type=Repositories

还想晓得更多好的数据结构与算法我的项目,能够点击下面的链接进行搜寻。


最初

Star 数最多,然而并不代表该我的项目就最好并适宜你哦,因为有些我的项目早于几年前就不再更新与保护了。

本文举荐的都是一些真的实用并还在更新的开源仓库,预计都比拟适宜前端学习。

平时如何发现好的开源我的项目,能够看看这篇文章:GitHub 上能挖矿的神仙技巧 – 如何发现优良开源我的项目。

本文原文 GitHub 地址:https://github.com/biaochenxu…

感觉有用?喜爱就珍藏,顺便点个赞吧,你的反对是我最大的激励!

在公众号后盾回复: 电子书 ,能够取得 160 本前端精髓书籍哦。

正文完
 0