美文网首页
Golang数据结构与算法全能战士

Golang数据结构与算法全能战士

作者: Golang分享汇 | 来源:发表于2018-11-21 15:03 被阅读148次

    今天给大家推荐是由Social Explorer团队开源的gods框架,自称"上帝",听这个名字就很霸气,正确的解释是GoDS(Go Data Structures),是数据结构与算法相关的框架。

    推荐理由

    全能战士,该框架覆盖了数据结构与算法里,大部分容器、集合类的实现, 比golang 的标准开发包提供更丰富的数据结构。

    介绍

    在Go中实现各种数据结构和算法。

    特性

    算法快速

    吸取了其他算法库数十年的知识和经验。

    内存高效

    通过针对给定的一组问题使用最佳算法和数据结构来避免消耗内存,例如, 在TreeMap的情况下,红黑树避免在内存中保留冗余排序的键数组。

    易于使用

    结构良好的库,具有简单的原子操作集,胜任复杂的数据操作。

    结构稳定

    保持库向后兼容

    扎实的文档和示例

    可参考的例子非常多

    产品友好

    可以方便集成到产品中.

    无依赖

    没有额外的导入.当实现算法的时候,我们通常要在时间效率与内存消耗之间权衡,我们选择在内存首先的情况下,不断优化得到最好的时间效率;线程安全不是重点,应该在更高的应用层上处理。

    重点

    囊括了列表,栈,图,树等基本数据结构 ,集合实现了HashSet, TreeSet, LinkedHashSet,列表实现ArrayList, SinglyLinkedList, DoublyLinkedList,对栈实现LinkedListStack, ArrayStack,图实现了HashMap, TreeMap, HashBidiMap, TreeBidiMap, LinkedHashMap,树实现了RedBlackTree, AVLTree, BTree,BinaryHeap,都经过性能测试的考验,值得信赖。

    后记

    对于Golang开发而言,gods对底层数据结构做很好的封装,Social Explorer团队在数据处理领域,数据可视化领域有极具竞争力的产品,相信在数据处理领域有很深的积淀,才创造这么优秀的框架,由于篇幅限制,相关图片展示效果不好,感兴趣的上官网去看看。

    官网:https://www.socialexplorer.com/

    GitHub https://github.com/emirpasic/gods

    希望大家能从emirpasic/gods学到有价值的东西。

    愿我们在Go 语言的学习之路上 从此结伴而行

    关注一下→

    Golang分享汇

    相关文章

      网友评论

          本文标题:Golang数据结构与算法全能战士

          本文链接:https://www.haomeiwen.com/subject/qylcqqtx.html