首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
算法与数据结构
kiki7
创建于2024-09-29
订阅专栏
算法与数据结构
暂无订阅
共4篇文章
创建于2024-09-29
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
用RandA()实现RandB(),A<B
RandA()表示可以均匀生成[1,A]范围的随机数的函数 (randX() - 1) * Y + randY() ==> 可以等概率的生成[1, X*Y]范围的的随机数,即实现了randXY() r
堆排序
1.首先对无序数组建堆,完全二叉树中,最后一个非叶子结点的下标为n/2(root的下标设为1),从n/2开始依次到root对其调整成堆即完成建堆。 为什么建堆过程要从n/2->1而不是从1->n/2,
快排
1.先从后往前移动(high),因为每次将第一个元素作为枢轴,那么第一个元素的位置就被空了出来,理所应当的应该先从后面找到一个比当前枢轴小的元素移到该空处 2.high == low时,即找到了枢轴元
二叉树遍历
层序遍历 1.Go中list包的链表是一个双向链表,可用来作为一个先进先出的队列 2.广度优先遍(BFS)历通常借助队列实现 3.层序遍历代码 4.T(n) = O(n), S(n)最差 = O(n)