算法
记录一些算法学习题目
luoluoluoya
吾乃生于乱世之中,自当斩破尘埃。
展开
-
【Golang 数据结构与法算】B-树
GitHub完整代码代码实现package treeimport ( "data-structures-and-algorithms/contract" "data-structures-and-algorithms/queue" "fmt" "sort" "strings")var ( nilItems = make([]interface{}, 16) nilChildren = make([]*btreeNode, 16))// b-树节点// k0 .原创 2021-12-23 11:32:13 · 455 阅读 · 0 评论 -
【Golang 数据结构与法算】 Splay 伸展树
GitHub完整代码代码实现// Package tree 伸展树:基于局部性原理,将被访问的数据亦步亦趋的伸展至根节点,并在伸展过程中对树进行折叠(降低树高,双层伸展)package treeimport ( "data-structures-and-algorithms/contract")// Splay 伸展树type Splay struct { Bst}// NewSplay 新建空伸展树func NewSplay(cmps ...contract.Compar.原创 2021-12-21 18:39:48 · 499 阅读 · 0 评论 -
【Golang 数据结构与法算】Bst 二叉搜索树
github 完整代码查找树接口package treeimport "data-structures-and-algorithms/types"// Interface 查找树约束接口type Interface interface { Search(v types.Sortable) *BinNode // 二叉树元素查找 Insert(v types.Sortable) *BinNode // 二叉树元素插入 Remove(v types.Sortable) bool .原创 2021-12-19 22:49:36 · 360 阅读 · 0 评论 -
【Golang 数据结构与法算】BinTree 二叉树
github 完整代码二叉树节点// Package bintree 二叉树节点package bintreeimport ( "data-structures-and-algorithms/queue" "data-structures-and-algorithms/stack" "data-structures-and-algorithms/types")// BinNode 二叉树节点type BinNode struct { Data types.S.原创 2021-12-19 11:18:53 · 481 阅读 · 0 评论 -
【Golang 数据结构与法算】sort 冒泡排序算法
github 完整代码// Package sort 冒泡排序算法package sortimport "data-structures-and-algorithms/types"// BubbleSort 冒泡排序func BubbleSort(data types.Interface) { BubbleSortRange(data, 0, data.Size())}// BubbleSortRange 对[lo, hi)区间执行冒泡排序func BubbleSortRange.原创 2021-12-18 19:26:20 · 292 阅读 · 0 评论 -
【Golang 数据结构与法算】stack 堆栈
github 完整代码// Package stack 堆栈package stack// Stack 栈type Stack struct { elem []interface{}}// New 初始化空栈func New() *Stack { return new(Stack)}// Empty 当前栈是否为空func (s *Stack) Empty() bool { return len(s.elem) <= 0}// Size 栈元素个数func .原创 2021-12-18 19:25:15 · 285 阅读 · 0 评论 -
【Golang 数据结构与法算】 queue 队列
github 完整代码// Package queue 队列package queue// Queue 队列type Queue struct { elem []interface{}}// New 初始化空栈func New() *Queue { return new(Queue)}// Empty 当前队列是否为空func (q *Queue) Empty() bool { return len(q.elem) <= 0}// Size 队列元素个数fu.原创 2021-12-18 19:24:22 · 401 阅读 · 0 评论 -
【Golang 数据结构语法算】 list 双向列表
github 完整代码// Package list 双向列表package listimport ( "data-structures-and-algorithms/types" "fmt" "strings")// Node 列表节点type Node struct { Data types.Sortable prev, next *Node list *List}// 新建节点func newNode(v types.Sortable, .原创 2021-12-18 19:22:10 · 198 阅读 · 0 评论 -
【Golang 数据结构与法算】 vector 向量
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar原创 2021-12-18 19:18:34 · 875 阅读 · 0 评论