《算法》笔记
文章平均质量分 78
曦西
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
《算法》阅读笔记-2.3 快速排序
2.3 快速排序2.3.1 基本算法算法描述:快速排序也是分治的排序算法(归并排序也是分治),将数组分成两个部分独立排序,步骤:1. 打乱2. 选择切分点(切分点左半部分小于等于切分点,有半部分大于等于切分点)3. 切分点左半部分排序4. 切分点有半部分排序代码如下:public static void sort(Comparator[] a原创 2017-06-17 23:09:03 · 261 阅读 · 0 评论 -
《算法》笔记-3.2二叉查找树
3.2 二叉查找树二叉查找树(BST):是一棵二叉树,每个结点都含有一个Comparable的键(以及相关联的值),每个结点的键都大于其左子树中的任意结点的键,小于其右子树的任意结点的键3.2.1 基本实现二叉树的数据表示:每个结点包含一个键、一个值、一条左链接(小于该结点的所有键组成的二叉树)、一条右链接、一个结点计数器(N:以该节点为根节点的子树中的结点总数);原创 2017-07-03 22:09:43 · 332 阅读 · 0 评论 -
《算法》-3.3平衡查找树(2)
3.3.2 红黑二叉查找树原创 2017-07-19 21:57:11 · 410 阅读 · 0 评论 -
《算法》阅读笔记-2.2归并排序
2.2归并排序2.2.1 原地归并的抽象方法归并:将两个有序的数组归并成一个更大的有序数组。原地归并的抽象方法merge(a,lo,mid ,hi),将子数组a[lo..mid]和a[id+1..hi]归并成一个有序的数组并将结果存放在a[lo..hi]中,代码如下:public static voidmerge(Comparator[] a,intlo,intmid,原创 2017-06-14 22:30:44 · 386 阅读 · 0 评论 -
《算法》笔记-3.2二叉查找树(2)
3.2.3.5删除最大键和删除最小键 递归方法的参数是要删除的结点,方法返回一个节点 删除最小节点:深入根节点的左子树,直至遇到null 然后将指向该节点的连接指向该节点的右子树 此时要删除的节点没有任何指针指向它,会被垃圾回收器回收 递归调用后更新连接和节点计数器3.2.3.6删除有两个子结点的结点原创 2017-07-04 21:41:26 · 256 阅读 · 0 评论 -
《算法》笔记-2.5 应用
2.5应用在一个有序的数组中查找一个元素要比在一个无序的数组中查找简单得多2.5.1 将各种数据排序Java可以实现任意实现了Comparable接口的数据类型排序,不管数据类型是什么;只要实现Comparable接口就可以用任意排序算法;实现Comparable接口的方法:定义一个compareTo()函数,并在其中定义该数据类型中的大小关系;Java中指针操作是隐式的,原创 2017-06-25 21:06:26 · 295 阅读 · 0 评论 -
《算法》笔记-2.4 优先队列
2.4 优先队列原创 2017-06-24 23:02:01 · 673 阅读 · 0 评论 -
《算法》笔记-3.1字符表
第三章 查找3.1 字符表原创 2017-07-01 22:01:37 · 269 阅读 · 0 评论 -
《算法》阅读笔记-2.1初级排序算法
第二章 排序2.1初级排序算法2.1.1 辅助函数public static voidexch(Comparable[] a, inti, intj){ //用于交换a[i]和a[j] Comparable t = a[i]; a[i] = a[j]; a[j] = t;}public static boolean les原创 2017-06-03 20:01:00 · 321 阅读 · 0 评论 -
《算法》-3.3平衡查找树(1)
3.3 平衡查找树3.3.1 2-3查找树原创 2017-07-18 21:00:32 · 344 阅读 · 0 评论
分享