自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(3)
  • 收藏
  • 关注

原创 算法导论 计数排序

不管所堆排序,还是快速排序,排序的本质都所基于各个元素之间的比较。而可以证明的是,所有基于比较的排序算法,在最坏情况下的时间复杂度的下界是O(nlgn)。 而,计数排序不所基于元素之间的比较,而是,对于一个输入x,在整个输入中确定出小于x的元素个数,这样就可以把元素x直接放在它在最终输出数组中的确定位子上。 基本思想:所有输入放入数组A中(元素下标从1开始)最终输出在数组B

2011-06-15 22:01:00 336

原创 算法导论 习题 6.5-8

题:请给出一个时间为O(nlgk)、用来将k个已排序链表合并为一个排序链表的算法。此处n为所有输入链表中元素的总数。(提示:用一个最小堆来做k路合并) k个已排序链表,假设每一个链表的第一个元素为root(i)  (i = 1,2,3...k)。那么可以为这k个元素root(i)构造一个最小堆Heap_Min,其时间复杂度为O(lgk)。此时堆顶元素假设为root(x),根

2011-06-03 22:06:00 552

原创 算法导论 堆排序

 堆的基本概念:堆是一个完全二叉树,用数组来存储这个结构的时候,A[1...length[A]]可以表示有效值,但heap_size[A]以外的值都不是属于堆的,可以视为无效值。 对于数组中下标为i的元素,根据二叉树的性质可以得到:其父节点下标为,P = n/2(下取整)左孩子: L = 2*i右孩子: R = 2*i + 1 最大堆:除了根节点外的每个节点i,

2011-06-03 15:50:00 504

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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