专栏首页roseduan写字的地方Go 语言—数据结构和算法项目推荐

Go 语言—数据结构和算法项目推荐

Hello 大家好,我是 roseduan,上一篇文章 Go 语言入门练手项目推荐 给大家分享了一些 Go 语言的入门练手项目。

今天分享的是一些数据结构和算法的项目,在我自己学习 Go 语言的时候,在掌握基础的语法知识之后,会针对性的刷一些 leetcode 题目,借此来巩固自己的语法知识,然后也能够保持解算法题目的感觉,可谓是一举两得吧。

所以从下面这些优秀的项目中,一定能够找适合你的项目哦!

1、GoDS

Github 地址:https://github.com/emirpasic/gods

Star 数量:9.9k

Go Data Structures,实现了常见的数据结构,可直接引入到实际的项目中使用,包含链表、栈、哈希表、树等等,命名风格和 Java 中的类名比较相似(估计作者受 Java 的影响颇深哈哈),比如有:

  • ArrayList
  • ArrayStack
  • HashSet
  • TreeSet
  • LinkedHashSet
  • RedBlackTree

当然你也可以用来学习数据结构,看看大牛的代码是怎么写的。

2、go-datastructures

Github 地址:https://github.com/Workiva/go-datastructures

Star 数量:6k

和上面的项目类似,这也是一个用 Go 语言实现各种数据结构的一个项目,只不过它支持的数据结构更加多样化,除了一些基础的,还有 BitArray、BTree、斐波那契堆、图、AVL 树、前缀树等等一些高级数据结构。

如果你想挑战一下比较有难度的数据结构,那么在这个项目应该能找到你可以学习或者借鉴的代码。

3、TheAlgorithms/Go

Github 地址:https://github.com/TheAlgorithms/Go

Star 数量:5.3k

这是 TheAlgorithms 系列的 Go 语言实现,我们知道 TheAlgorithms 系列有很多语言的版本,比如 Python、Java、Go、C++、JavaScript 等等。

这个项目比较适合用来学习,有很多基础的算法的示例,比如数学、二分查找、排序、字符串匹配,还有一些练手的算法题目。

4、algorithm-pattern

Github 地址:https://github.com/greyireland/algorithm-pattern

Star 数量:11.5k

这个项目主要是介绍了一些通用的刷题模板,以及一些常见问题,如到底要刷多少题,按什么顺序来刷题,如何提高刷题效率等。

作者总结的模板非常全面,讲解也很细致。

比较适合用来临时刷算法,应对面试,所以即便不是学习 Go 语言的同学,也能够从中获取到一些刷题的经验等。

项目中还有一些书籍推荐,文档也非常的全面。

5、LeetCode-Go

Github 地址:https://github.com/halfrost/LeetCode-Go

Star 数量:17.4k

顾名思义,这是一个使用 Go 语言实现 Leetcode 题目的项目,比较偏向于解题实战。

目前项目已经收录了 600+ leetcode 题目,并且针对每一道题目,都有详细的解题思路,并且有完整的代码实现。

项目还有配套的电子书,文档,可以说是非常 nice 了!

6、hoanhan101/algo

Github 地址:https://github.com/hoanhan101/algo

Star 数量:3k

这个项目是作者总结的,在面试过程当中最容易遇到的一些算法面试题目,配有详细的代码实现,只不过是全英文的,英文比较好的同学可以尝试学习一下。

7、shady831213/algorithms

Github 地址:https://github.com/shady831213/algorithms

Star 数量:504

这个项目实现了一些常用的算法和数据结构,比如动态规划、贪心算法、图、树、堆等等,代码比较简洁清晰,值得学习。


题图:from wallhaven.cc

本文分享自微信公众号 - roseduan写字的地方(rose_duan),作者:roseduan

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2021-05-02

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Go 语言学习路线来啦

    时不时的有人问我一些关于 Go 语言学习路线、学习资源方面的问题,这篇文章就来详细说一说。借此希望给那些正在学习,或是想学习 Go 语言的朋友一些帮助。

    roseduan
  • 推荐一个项目:数据结构和算法必知必会的 50 个代码实现

    看了这么久小吴的文章,不知道你们有没有发现,目前文章中涉及到的编程代码有 Java、C++、Python、JavaScript 这么多种,但就算法而言,实际上这...

    五分钟学算法
  • 强烈推荐 GitHub 上值得前端学习的数据结构与算法项目

    强烈推荐 GitHub 上值得前端学习的数据结构与算法项目,包含 gif 图的演示过程与视频讲解。

    夜尽天明
  • 强烈推荐 GitHub 上值得前端学习的数据结构与算法项目

    强烈推荐 GitHub 上值得前端学习的数据结构与算法项目,包含 gif 图的演示过程与视频讲解。

    灵魂画师牧码
  • 十本数据结构与算法书籍推荐

    三哥
  • 我的 Java 转 Go 之路

    从毕业到现在已经接近两年了,在这段时间里,我日常开发都是使用的 Java,因为大学那时候自学的是 Java,然后毕业找到的工作也是做 Java 开发的。

    roseduan
  • 数据结构与算法 (Kotlin语言描述)

    1.Kotlin 概述 为什么用Kotlin? Kotlin快速入门 2.数据结构与算法基础 时间复杂度 空间复杂度 递归函数 3.数组 4.栈...

    一个会写诗的程序员
  • java语言描述数据结构与算法

    崔笑颜
  • Go开发者路线图2019,请收下这份指南

    Go是Google开发的一种静态、强类型、编译型、并发型,并具有垃圾回收功能的类C编程语言。2009以开源项目的形式发布,2012年发布1.0稳定版本,距今已经...

    AI科技大本营
  • 区块链开发语言之go语言学习线路指导

    问题导读 1.为什么学习go语言? 2.你认为该如何入门go语言? 3.你认为go语言需要哪些学习过程?

    用户1410343
  • 《Go 语言编程之旅》送煎架和站长写的书

    Go语言在2009年首次亮相,是谷歌开发的一种通用型语言。与Python等其他编程语言相比,Go语言具有多个优势,这也是它值得关注的地方。

    梦醒人间
  • 数据结构与算法(一)——学习工具的推荐

      秋招已经开启一个月了,九月份和十月份是我们秋招找工作的黄金时期。但是大多数的企业都会在笔试或者面试中会考察我们数据结构的知识点,有的会直接考查数据结构的代码...

    一计之长
  • Go语言学习之旅 2 - 基本语法及数据结构

    大写开头,导出 如果一个名字以大写字母开头,那么它就是已导出的。例如,Pizza 就是个已导出名,Pi 也同样,它导出自 math 包。

    zhangyunfeiVir
  • 很多小伙伴问我推荐什么书籍和网课,这次把私藏很久的资料都贡献了(上)

    平时有不少读者朋友问,有没有学习书籍网上课程推荐?今天结合自己学习经历与身边几个朋友的经历总结了一份程序员相关的书籍和网课。

    C语言与CPP编程
  • 适合 Go 新手学习的开源项目——在 GitHub 学编程

    故事要从 2007 年说起。因为受够了 C++ 煎熬的 Google 首席软件工程师 Rob Pike 召集 Robert Griesemer 和 Ken Th...

    HelloGitHub
  • 满满的干货:机器学习资料(一)

    大侠好,欢迎来到FPGA技术江湖,江湖偌大,相见即是缘分。大侠可以关注FPGA技术江湖,在“闯荡江湖”、"行侠仗义"栏里获取其他感兴趣的资源,或者一起煮酒言欢。...

    FPGA技术江湖
  • 用了30天整理的一些GO语言学习资料,2019请你加油

    因为极其优秀的并发性能,Google的亲儿子Go语言站上了风潮之巅。出现在21世纪的GO语言,虽然不能如愿对C++取而代之,但是其近C的执行性能和近解析型语言的...

    马小哥
  • 从Go语言开始,彻底学懂数据结构与算法 -- 线性表

    用一个定长数组data[]存储数据,最大空间为Maxsize,用length记录实际的元素个数,即数组的长度。

    宇宙之一粟
  • 程序员最佳书籍(2020终极列表)

    《计算机程序的结构和解释》(在业界也称为SICP)是一本经典的书,它教编程的基础知识。

    用户6543014

扫码关注云+社区

领取腾讯云代金券