问题描述:给定由n个互不相同的数组成的集合S以及正整数k≤n,试设计一个O(n)时间算法找出S中最接近S的中位数的k个数。 算法描述: 算法实现: ...
分类:
其他好文 时间:
2018-10-15 14:47:16
阅读次数:
264
学了算法的第二章以后,我对于算法思想有了进一步的理解。分治法的化繁为简,化难为易的思想,在日常生活中也能很好地体现出来。如果应用得当,往往能起到峰回路转,茅塞顿开的效果。 第二章的PTA实践,第一第二题其实检验了我们对二分搜索的掌握,以及算法的改写能力。第三题我觉得有点难度,因为它给出的序列最大长度 ...
分类:
编程语言 时间:
2018-10-14 11:43:21
阅读次数:
130
以多项式作为分界函数? 一、常见算法大致分为两类: 一类是多项式时间内可实现的 另一类需要指数时间(O(cn)) 二、多项式时间算法与计算模型无关 算法的研究依赖于计算模型。在不同类型计算模型上实现算法,计算时间不同。 广义Church-Turing命题:不同计算模型上的计算时间有多项式时间关系。 ...
分类:
编程语言 时间:
2018-10-04 17:20:39
阅读次数:
253
前言 无论是计算机算法概论、还是数据结构书中,关于算法的时间复杂度很多都用包含O(logN)这样的描述,但是却没有明确说logN的底数究竟是多少。算法中log级别的时间复杂度都是由于使用了分治思想,这个底数直接由分治的复杂度决定。如果采用二分法,那么就会以2为底数,三分法就会以3为底数,其他亦然。 ...
分类:
编程语言 时间:
2018-08-22 11:09:22
阅读次数:
240
今天在看算法时,遇见了一些问题,想了很久,现总结如下,关于for循环的时间复杂度。我们知道当一重for循环时 这是最简单的for循环,count执行n次,时间复杂度是N; 如果是for的二重循环呢 可以看见count输出4950;一般刚接触时,就会觉得这事件复杂度是n的平方,当然一般这样说也没错,但 ...
分类:
其他好文 时间:
2018-07-01 00:31:39
阅读次数:
783
阅读目录 创建当前的日期和时间 获取日期&时间组件 Time.utc、Time.gm 和 Time.local 函数 时区和夏令时 格式化时间和日期 时间格式化指令 时间算法 Time 类在 Ruby 中用于表示日期和时间。它是基于操作系统提供的系统日期和时间之上。该类可能无法表示 1970 年之前 ...
分类:
其他好文 时间:
2018-06-10 20:39:06
阅读次数:
232
乘方问题 输入一个实数x,一个整数n >= 0,计算xn。 朴素算法即时对n个x连乘。 分治法: xn = xn/2 · xn/2 如果n为偶数 xn = x(n-1)/2 · x(n+1)/2 如果n为奇数 T(n) = T(n/2) + θ(1) = θ(lg n) Bottom-up algo ...
分类:
其他好文 时间:
2018-03-27 01:53:45
阅读次数:
90
“P=NP?” 通常被认为是计算机科学最重要的问题。有一个叫Clay Math的研究所,甚至悬赏 100 万美元给解决它的人。可是我今天要告诉你的是,这个问题其实是不存在的,它根本不需要解决。 我并不是第一个这样认为的人。在很早的时候就有个数学家毫不客气的指出,P=NP? 是个愚蠢的问题,并且为了嘲 ...
分类:
其他好文 时间:
2018-03-03 10:52:30
阅读次数:
203
1、生活、生产等现实世界的数据有各种各样的组成形式。例如一个课程的所有学生的成绩(一组数据),一个班全部学生的所有课程的成绩(一张表)、一个单位的人员结构(树)等等。 2、这些数据都要先加载到内存中,再送到CPU中进行计算。 3、内存的最基本单位叫做存储单元,一个字节(不讨论理论中的、个别情况的)。 ...
分类:
其他好文 时间:
2018-02-05 12:36:27
阅读次数:
172
时隔多日终于解决了埋在心头的一道难题,霎时云开雾散,今天把一路而来碰到的疑惑和心得都记录下来,也算是开启了自己探索算法的大门。 问题背景 曾经有一个年少轻狂的职场小白,在前端圈子里摸爬滚打将近两年,本计划在js的道路上越走越远,以至于每天沉浸在js红皮书里不能自拔,突然有一天脑抽想找leader比划 ...
分类:
编程语言 时间:
2018-01-19 00:23:08
阅读次数:
280