算法导论
蓝天的IT生涯
这个作者很懒,什么都没留下…
展开
-
计数排序算法详解
经典排序算法 - 计数排序Counting sort 注意与基数排序区分,这是两个不同的排序 计数排序的过程类似小学选班干部的过程,如某某人10票,作者9票,那某某人是班长,作者是副班长 大体分两部分,第一部分是拉选票和投票,第二部分是根据你的票数入桶 看下具体的过程,一共需要三个数组,分别是待排数组,票箱数组,和桶数组 var unsorted = new int[转载 2014-03-31 21:11:53 · 962 阅读 · 0 评论 -
算法导论之符号标记
前言 在学习计算机算法时,知道插入排序的时间复杂度是O(n2),那O记号到底是什么意思呢?本文主要介绍几个算法分析时用到的记号。 大O记号 定义:O(g(n)) = { f(n) : 存在正常数c和n0 ,使对所有的n >= n0,都有 0 , 则可以表示为 f(n) = O(n2)。证明: 要使得 0 存在c = 9/2转载 2014-03-21 09:21:09 · 1426 阅读 · 0 评论 -
算法导论学习总结-基础篇(一)
一、基础知识(概念)总结: 1.渐进记号: (1).大O记号: 大O记号给出函数的渐进上界。定义:O(g(n))={f(n):存在正常量 c 和 n0,使得对所有 n>=n0,有 0 (2).大Ω记号:正如O记号提供了一个函数的渐进上界,Ω记号提供了渐进下界。定义:Ω(g(n)) = {f(n):存在正常量c和n0,使得所有n>=n0,有0 (3).大Θ记号: 大Θ记号给出函数的渐进紧确原创 2014-03-31 22:48:46 · 3417 阅读 · 0 评论 -
【算法学习】线性时间排序-计数排序、基数排序和桶排序详解与编程实现
计数排序 计数排序假设n个输入元素中的每一个都是介于0到k之间的整数。此处k为某个整数(输入数据在一个小范围内)。 算法思想 计数排序的基本思想是对每一个输入元素x,确定出小于x的元素的个数。然后再将x直接放置在它在最终输出数组中的位置上。 由于数组中可能有相等的数,在处理时需要注意。 时间复杂度和空间复杂度分析转载 2014-03-31 21:18:03 · 753 阅读 · 0 评论