最新 最热

Kotlin Array 二分法查找

示例代码 /** * 二分法查找 * @findValue:需查找的数字 * */ fun findNumber(findValue:Int):Int{ var index = -1 if(itemArr[0] > findValue ||...

2019-04-11
0

当Kotlin遇见数据结构丨哈夫曼编码

哈夫曼编码是一种编码格式,属于可变字长编码的一种,该方法依照字符出现的概率来构建异字头的平均长度最短的码字,最终实现根据使用频率来最大化节省码字(字符)的存储空间和提高传输效率的目的,在数据压缩和通讯领域应用的非...

2019-04-11
0

当Kotlin遇见数据结构丨哈夫曼解码

哈夫曼编码是一种编码格式,属于可变字长编码的一种,该方法依照字符出现的概率来构建异字头的平均长度最短的码字,最终实现根据使用频率来最大化节省码字(字符)的存储空间和提高传输效率的目的,在数据压缩和通讯领域应用的非...

2019-04-11
0

当Kotlin遇见数据结构丨实现链式存储的二叉树中删除子树(直接删除篇)

本例实现逻辑为直接删除节点及其子节点,未处理存在有左右子节点并需移动逻辑,故将标题命名为为直接删除篇

2019-04-11
0

当Kotlin遇见数据结构丨实现顺序存储的二叉树并遍历

注意:在 Kotlin 中使用 data class 声明类时,可以直接创建一个包含 getters、 setters、 equals()、 hashCode()、 toString() 以及 copy() 的 POJO,大大减少了样板代码数量,这是 Kotlin 的一大特色!...

2019-04-11
0

当Kotlin遇见数据结构丨哈夫曼树的实现

给定N个数值作为N个叶子结点的权值,构造一颗二叉树,若该树的带权路径长度达到最小,称这样的二叉树为最优二叉树,也叫哈夫曼树。

2019-04-11
0

当Kotlin遇见数据结构丨实现中序线索化二叉树并遍历

n个节点的二叉树含有n+1个空指针域。利用这些空指针域,存放指向节点的在某种遍历次序下的前驱节点及后继节点的指针,这种附加的指针称为"线索",加上了线索的二叉树就是"线索二叉树"。...

2019-04-11
0

当Kotlin遇见数据结构丨实现链式存储的二叉树中查找节点

链式存储的二叉树中查找节点的方法可分为三种:前序查找、中序查找、后序查找,下面使用 Kotlin 语言编码实现查找函数,已创建的树结构、节点权如下图所示:...

2019-04-11
0

当Kotlin遇见数据结构丨实现链式存储的二叉树并遍历

简单二叉树的创建分为三部分: 新建节点、新建树、给节点和树赋值并关联,下面进入编码阶段:

2019-04-11
0

当Kotlin遇见数据结构丨使用哈夫曼编码压缩文件

哈夫曼编码是一种编码格式,属于可变字长编码的一种,该方法依照字符出现的概率来构建异字头的平均长度最短的码字,最终实现根据使用频率来最大化节省码字(字符)的存储空间和提高传输效率的目的,在数据压缩和通讯领域应用的非...

2019-04-11
0