一名普通码农的菜地

混一口饭吃而已,无他。

【算法总结】KMP算法及java实现

【参考资料】 关于KMP算法,大家可以查阅博客园的这篇文章: 阮一峰:字符串匹配的KMP算法 这篇解释文章相当简明,当然july的这篇文章也可以读一读: 六之续、由KMP算法谈到BM算法 【算法原理】 这里抄录第一篇参考资料的例子: 下面,我用自己...

2013-09-23 16:10:01

阅读数 9754

评论数 6

【算法总结】B树总结

【参考资料】 从B树、B+树、B*树谈到R 树 【B树解释】 B树是一棵树,不同的是该树的最多有m个子节点,至少floor(m/2)个子节点(根节点除外,根节点最少可以有两个子节点。),但是里面包含关键字数量比当前的子节点少1,在没有子节点的情况下,关键字数量在 floor(m/2)-1...

2013-09-17 11:59:33

阅读数 1792

评论数 1

【算法总结】红黑树总结

此坑待埋

2013-09-16 12:19:37

阅读数 1773

评论数 0

【算法总结】堆及堆排序总结

此坑待埋。

2013-09-16 11:19:31

阅读数 1020

评论数 0

【算法总结】归并排序总结

【前言】 归并排序的思想是,将一个数组划分成为可以轻易排序的最小部分(最小部分的标准通常是1个数或者两个数),对最小数组排好序后,向上合并排序数组(向上合并排序通常需要额外空间,譬如:现在两个排好序的部分:7,12和5,15,我们将它们合并成为5,7,12,15---存储在临时区,然后再放回原本数...

2013-09-16 11:16:07

阅读数 1280

评论数 0

【算法总结】快速排序算法

dfdf

2013-09-16 10:56:24

阅读数 810

评论数 0

【算法】堆,最大堆(大顶堆)及最小堆(小顶堆)的实现【2】---软件截图及算法代码

ok,先上截图: 下面将演示堆的插入操作 【插入关键字18,17,15,19】 【插入关键字16,12,21】 【插入关键字27】 【插入关键字13】 【插入关键字11】 插入操作都大同小异。 然后进行删除操作: 【删除关键字】 【删除关键字...

2013-09-15 21:14:06

阅读数 3203

评论数 0

【算法】散列表及散列函数的java简单实现

【前言】 想必大家对散列表及散列函数有所了解了。 当然,散列表有两个重点问题:1、如何将一个数字映射到数组下标; 2、如何处理冲突问题?   ok,鉴于这是演示简单的哈希表,散列函数这样定义: index=key%16; 而冲突的处理如何: 当映射到的位置一样,就将相关数据压入同一位置的链表。  ...

2013-09-11 18:01:49

阅读数 3806

评论数 0

【算法】归并排序的java实现

在编写代码前,请大家看看归并排序的思想。 百度百科--归并排序 下面是根据这个思想而编写的算法。 package MergeSort; public class MergeSortMain { public static void main(Str...

2013-09-10 21:26:21

阅读数 556

评论数 0

【算法】R树的研究及实现(1)

【此坑待埋】

2013-09-06 22:00:19

阅读数 2080

评论数 0

【算法】B+树的研读及实现(2)---java版核心代码

【前言】 假如大家已经弄懂了b树及b+树那么恭喜你们了,因为我觉得,b树及b+树是文件系统尤其是数据库优化的关键。 这里预告一下,下一篇课题(也不能说课题,只能用“业余研究题目”这种称呼)是R树,R树似乎是多维的B+树,各位假如也希望弄懂R树的话,请先好好看看b+树。 【代码】 ...

2013-09-06 21:57:38

阅读数 6864

评论数 7

【算法】java版红黑树算法的完整实现及swing界面演示程序

【前言】 当初因为觉得数据结构及算法是码农的基础(正如锄头对农民一样)才决定话费时间来补习的,但是真正自行实现算法及算法的可视化演示的时候才发现难度是如此之大。 算法写起来慢,swing界面写起来也慢。 红黑树的结构最重要就是几个规则: 1、根节点为黑色,NIL(空节点,叶节点,每一条路径...

2013-08-30 11:16:58

阅读数 3303

评论数 2

【算法】红黑树的讲解及插入删除算法实现原理

此坑待埋。 -----20130823

2013-08-27 18:01:16

阅读数 4322

评论数 3

【算法】中缀表达式、后缀表达式的java实现几网上观点的勘误。

首先,大家可以看看数据结构与算法,或者大话数据结构之类的堆栈的章节,知道中缀表达式、后缀表达式概念及使用stack转换及计算的原理再看程序实现比较好。我提一下, 除了可以用stack来将中缀表达式转换成后缀表达式,也可以用二叉树来令前缀表达式、中缀表达式、后缀表达式相互转换, 具体可以看这个例子:...

2013-08-25 12:41:01

阅读数 1558

评论数 0

【算法】斐波那契列数的求和

前两个数之和等于第三个数,第二个数与第一个数相等,这是斐波那契数列的规则,下面用实现一下这种规则,当然,限定计算第一百个数,第一个数为1. 当然书上有这种规则的实现,但是假如要打印全部数组的话,用递归的效率很抓急,直接用数组一次遍历就ok了。 package Chacter4; pu...

2013-08-24 19:31:25

阅读数 1042

评论数 0

【算法】快速排序的一个实现

【前言】 快速排序的精髓在于每次都将某一部分按照某个pivot的大小排列, 譬如: 一个数组: 4 7 15 9 6 8 5 7 6 1 11 3 10 我们按照数组index=7的元素即【7】来划分左右两边的数组,左边数组小于7,右边数组大于7,然后可以得到...

2013-08-11 21:22:18

阅读数 724

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭