• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
 






lls101

 
 

Powered by 博客园
博客园 | 首页 | 新随笔 | 联系 | 订阅 订阅 | 管理

2019年7月31日

String之字符串排序
摘要: 键索引计数法 我们先介绍一种适合小整数键的简单排序方法,这是我们将要学习的字符串排序的基础,举个例子,我们希望将全班学生按组分类。如图 姓名 An Br Da Ga Ha Ja Jh Jn Ma 组号 2 3 3 4 1 3 4 3 1 姓名 Mb Mi Mo Ro Sm Ta Ta Tp Wh 组 阅读全文
posted @ 2019-07-31 17:19 lls101 阅读(5872) 评论(0) 推荐(0)
 

2019年7月24日

平衡查找树之2-3查找树
摘要: 2-3树 我们在二叉查找树中曾介绍过二叉查找树有可能会出现最坏的情况,所有的结点变成了一条链。如图 我们当然希望我们能保存二叉查找树的平衡性,但是在动态插入过程中保证树的完美平衡代价太大了。我们退而求其次,学习一种新的数据结构。 相关定义: 2-结点:含有一个键(及对应值)和两条链接,左链接指向2- 阅读全文
posted @ 2019-07-24 20:00 lls101 阅读(242) 评论(0) 推荐(0)
 
二叉查找树
摘要: 定义: 一颗二叉查找树(BST)是一颗二叉树,其中每个结点都含有一个Comparable的键(及其相关的值),每个结点的键都大于左子树中任意结点的键且小于右子树任意结点的键。 基本实现: 我们定义一个私有类来表示二叉查找树上的一个结点,每个结点含有一个键,一个值,一条左链接,一条右链接和一个结点计数 阅读全文
posted @ 2019-07-24 12:25 lls101 阅读(167) 评论(0) 推荐(0)
 

2019年7月23日

优先队列及堆排序
摘要: 优先队列 定义 许多应用程序要处理许多有序的元素,但不一定要求他们全部有序;或者不要求一次就将他们排序,很多情况下我们会处理当前键值最大的元素,然后再搜集更多的元素,在处理最大的元素,或者为每一个应用分配一个优先级,并总是处理下一个优先级最高的事件。 在这种情况下,一个合适的数据结构应该支持两种操作 阅读全文
posted @ 2019-07-23 10:49 lls101 阅读(532) 评论(0) 推荐(0)
 

2019年7月22日

快速排序
摘要: 前言:快速排序是一种分治的排序算法,他将一个数组分成两个数组,将两部分独立的排序。快速排序和归并排序是互补的:归并排序是将数组分成两个子数组分别排序,并将有序的子数组归并以将整个数组排序,而快速排序将数组排序的方式是当两个子数组都有序时整个数组也就有序了。 大致过程如下: 其中左边的不大于K,右边的 阅读全文
posted @ 2019-07-22 16:45 lls101 阅读(7149) 评论(0) 推荐(0)
 

2019年7月21日

归并排序
摘要: 原地归并的抽象方法。 实现归并排序的一个直截了当的方法是将两个不同的有序数组归并到第三个数组中(他们都实现了Comparable接口)。但是当数组很大时要进行多次归并,因此在每次归并时都创立数组会带来性能问题。如果有一种能原地归并的方法,这样先将左半部分排序,再将右半部分排序,然后再数组中移动元素。 阅读全文
posted @ 2019-07-21 22:06 lls101 阅读(179) 评论(0) 推荐(0)
 
初级排序算法
摘要: 排序算法类的模板 less()方法对元素进行比较,exch()方法将元素交换位置,show()方法打印数组.这个模板使用任何实现了Comparable接口的数据类型。 代码实现: 1 public class Example { 2 private static boolean less(Compa 阅读全文
posted @ 2019-07-21 10:04 lls101 阅读(171) 评论(0) 推荐(0)
 

2019年7月20日

union-find算法探究
摘要: 一:动态连通性 问题的输入是一对整数,例如(p、q),表示p和q是相连的,这里的相连是一种等价关系,即:具有自反性,对称性和传递性。 等价关系可以将对象分为多个等价类,仅当两个对象相连时他们属于一个等价类。我们的目标是编写一个程序来过滤掉序列中无意义的整数对。比如,当程序读到了p、q时,如果已知的整 阅读全文
posted @ 2019-07-20 19:42 lls101 阅读(192) 评论(0) 推荐(0)
 

2019年7月19日

数据结构之Java对象内存
摘要: 前言: Java最重要的特征之一就是它的内存分配系统,我们在分析Java对象的内存的时候,可以将它分解为基本的原始数据类型,而原始数据类型在Java中占用的大小是预先定义好的。只需要将变量的数量和他们预先定义好的字节数相乘即可。,下图是Java中原始数据类型的常见内存需求。 但是因为内存的使用和具体 阅读全文
posted @ 2019-07-19 17:51 lls101 阅读(386) 评论(0) 推荐(1)
 

2019年7月16日

深度优先遍历与广度优先遍历
摘要: 前言:从图中的任一顶点出发,对图中的所有顶点访问一次且只访问一次称为图的遍历。 深度优先遍历 走迷宫: 为了更好的理解深度优先遍历,我们先来考虑一下一个经典的问题——走迷宫。 我们使用Tremaux搜索。 在身后放一个绳子 访问到的每一个地方放一个绳索标记访问到的交会点和通道 当遇到已经访问过的地方 阅读全文
posted @ 2019-07-16 11:05 lls101 阅读(1642) 评论(0) 推荐(1)
 
下一页