python中,每个进程有GIL锁,导致每个进程同一时刻只能有一个线程出来执行 threading模块 join 阻塞主线程,等待线程结束后再继续执行主线程 不开多线程的运行时间 计算密集型和IO密集型 IO密集: 程序中存在大量的IO操作 计算密集: 程序中存在大量计算操作(非IO操作) 对于计算 ...
分类:
编程语言 时间:
2018-02-24 15:04:24
阅读次数:
163
摘要: 本章所讨论的问题是在一个由n个不同数值构成的集合中选择第i个顺序统计量问题。主要讲的内容是如何在线性时间内O(n)时间内在集合S中选择第i小的元素,最基本的是选择集合的最大值和最小值。一般情况下选择的元素是随机的,最大值和最小值是特殊情况,书中重点介绍了如何采用分治算法来实现选择第i小的元素 ...
分类:
其他好文 时间:
2018-02-23 16:03:13
阅读次数:
201
摘要: 本章先回顾了前面介绍的合并排序、堆排序和快速排序的特点及运行运行时间。合并排序和堆排序在最坏情况下达到O(nlgn),而快速排序最坏情况下达到O(n^2),平均情况下达到O(nlgn),因此合并排序和堆排序是渐进最优的。这些排序在执行过程中各元素的次序基于输入元素间的比较,称这种算法为比较排 ...
分类:
编程语言 时间:
2018-02-23 16:00:03
阅读次数:
187
此文能够加强读者对于cpu和cache的工作原理的理解,这是实现高性能编程必备的知识点。文章不长,让我们从一个简单的问题说起,为什么一个程序死循环时它的cpu占用会达到100%? 这个问题虽然简单,但不一定人人都能答得出来。我们直接从问题说起,程序的CPU占用达到100%,说明在它的时间片内,CPU ...
分类:
其他好文 时间:
2018-02-22 23:51:54
阅读次数:
346
问题:磁盘文件排序 输入: 输入的是一个文件,之多包含n个正整数,每个正整数都要小于n,这里n=10^7.每个数字唯一. 输出: 以升序形式输出经过排序的整数列表. 约束: 至多(大约)1MB的可用内存,磁盘空间充足,运行时间只允许几分钟,10s较理想. 解决方案: (由于约束条件,无法一次性将所有 ...
分类:
其他好文 时间:
2018-02-22 19:30:02
阅读次数:
205
Start(): 开始或继续测量某个时间间隔的运行时间。 Stop(): 停止测量某个时间间隔的运行时间。 ElapsedMilliseconds:获取当前实例测量得出的总运行时间(以毫秒为单位)。 ...
分类:
其他好文 时间:
2018-02-12 13:47:47
阅读次数:
190
一、渐进记法三个重要的记号 Ο、Ω、Θ,Ο记法表示渐进上界,Ω记法表示渐进下界,Θ记法同时提供了函数的上下界几种常见的渐进运行时间实例三种重要情况最好的情况,最坏的情况,平均情况最坏的情况通常是最有用的情况,可以对算法效率做出最佳保证实证式算法评估Tip1:If possible, don’t wo... ...
分类:
编程语言 时间:
2018-02-11 16:15:21
阅读次数:
161
1047. Student List for Course (25) 时间限制 400 ms 内存限制 64000 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue 时间限制 400 ms 时间限制 400 ms 内存限制 64000 kB 内存限制 6400 ...
分类:
其他好文 时间:
2018-02-10 18:16:07
阅读次数:
184
1.命令基础 1.1命令的结构 UNIX/Linux命令的一般结构为: 命令名 [-选项] [参数] 选项是对命令的特别定义,用来选择一个命令的不同操作。以-开始,多个选项可以用一个-连起来,如: ls -l-a 与 ls -la 相同。 参数提供命令运行所需要的额外信息,通常为文件名或路径名。 U ...
分类:
其他好文 时间:
2018-02-10 11:10:43
阅读次数:
166
一、Quartz概述: Quartz是一个完全由Java编写的开源任务调度的框架,通过触发器设置作业定时运行规则,控制作业的运行时间。其中quartz集群通过故障切换和负载平衡的功能,能给调度器带来高可用性和伸缩性。主要用来执行定时任务,如:定时发送信息、定时生成报表等等。 二、相关术语: 三、Qu ...
分类:
其他好文 时间:
2018-02-09 22:32:07
阅读次数:
208