共计 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 篇算法入门的文章
- 工夫和空间复杂度
- 线性表(数组、队列、栈、链表)
- 实现一个前端路由,如何实现浏览器的后退与后退?
- 栈内存与堆内存、浅拷贝与深拷贝
- 递归
- 非线性表(树、堆)
- 冒泡排序、抉择排序、插入排序
- 归并排序、疾速排序、希尔排序、堆排序
- 计数排序、桶排序、基数排序
- 十大经典排序算法汇总
- 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 本前端精髓书籍哦。