走过路过不要错过,有钱捧个钱场,没钱捧个人场. 欢迎|

志旋

园龄:4年9个月粉丝:5关注:1

08 2021 档案

算法-基数排序
摘要:基数排序 基数排序(Radix Sort)是桶排序的扩展,它的基本思想是:将整数按位数切割成不同的数字,然后按每个位数分别比较。 具体做法是:将所有待比较数值统一为同样的数位长度,数位较短的数前面补零。然后,从最低位开始,依次进行一次排序。这样从最低位排序一直到最高位排序完成以后, 数列就变成一个有
41
0
0
算法-计数排序
摘要:计数排序 计数排序是一个非基于比较的排序算法,该算法于1954年由 Harold H. Seward 提出。它的优势在于在对一定范围内的整数排序时,它的复杂度为Ο(n+k)(其中k是整数的范围),快于任何比较排序算法。 [1] 当然这是一种牺牲空间换取时间的做法,而且当O(k)>O(nlog(n))
26
0
0
NIO-ByteBuffer
摘要:一、ByteBuffer 官方解释A byte buffer,一个字节缓冲区。 二、ByteBuffer的扩展 Bytebuffer UML图 - 描述 优点 HeapByteBuffer 在jvm堆上面的一个buffer,底层的本质是一个数组 由于内容维护在jvm里,所以把内容写进buffer里速
34
0
0
数据结构-前缀树trie
摘要:前缀树 简介 前缀树是N叉树的一种特殊形式。通常来说,一个前缀树是用来存储字符串的。前缀树的每一个节点代表一个字符串(前缀)。每一个节点会有多个子节点,通往不同子节点的路径上有着不同的字符。子节点代表的字符串是由节点本身的原始字符串,以及通往该子节点路径上所有的字符组成的。 插入 当我们在二叉搜索树
72
0
0
算法-堆排序
摘要:堆排序 先让整个数组都变成大根堆结构,建立堆的过程 从上到下的方法,时间复杂度为O(logN*N) 从下到上的方法,时间复杂度为O(N) 把堆的最大值和堆末尾的值进行交换,然后减少堆的大小之后,再去调整堆,一直周而复始,时间复杂度为O(N) 堆的大小减成0之后,排序完成 图示 代码 其实你会将数据调
56
0
0
算法-选择排序
摘要:算法-选择排序 选择排序是一种简单直观的排序算法,无论什么数据进去都是 O(n²) 的时间复杂度。所以用到它的时候,数据规模越小越好。唯一的好处可能就是不占用额外的内存空间了吧。 算法步骤 首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置。 再从剩余未排序元素中继续寻找最小(大)元素,
42
0
0
算法-冒泡排序
摘要:冒泡排序 冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢"浮"到数列的顶端。 算
35
0
0
算法-归并排序
摘要:归并排序 一、简述 归并排序是将两个或两个以上的有序表组合成一个新的有序表。 其基本思想是: 先将 N 个数据看成 N 个长度为 1 的表,将相邻的表成对合并,得到长度为 2 的 N/2 个有序表,进一步将相邻的合并,得到长度为 4 的 N/4 个有序表,以此类推,直到所有数据均合并成一个长度为 N
104
1
0
点击右上角即可分享
微信分享提示
深色
回顶
收起