摘要: 转自:http://blog.csdn.net/eulb/article/details/2177500先来回答第一个问题,线程实际主要应用于四个主要领域,当然各个领域之间不是绝对孤立的,他们有可能是重叠的,但是每个程序应该都可以归于某个领域:1、offloading time-consuming task。由辅助线程来执行耗时计算,而使GUI有更好的反应。我想这应该是我们考虑使用线程最多的一种情况吧。2、Scalability。服务器软件最常考虑的问题,在程序中产生多个线程,每个线程做一份小的工作,使每个CPU都忙碌,使CPU(一般是多个)有最佳的使用率,达到负载的均衡,这比较复杂,我想以后 阅读全文
posted @ 2013-06-28 22:47 路过你的苦 阅读(217) 评论(0) 推荐(0)
摘要: 转自:http://blog.csdn.net/hackbuteer1/article/details/73489681、实现一个函数,对一个正整数n,算得到1需要的最少操作次数。操作规则为:如果n为偶数,将其除以2;如果n为奇数,可以加1或减1;一直处理下去。例子:func(7) = 4,可以证明最少需要4次运算n = 7n-1 6n/2 3n-1 2n/2 1要求:实现函数(实现尽可能高效) int func(unsign int n);n为输入,返回最小的运算次数。给出思路(文字描述),完成代码,并分析你算法的时间复杂度。答:[cpp]view plaincopyintfunc(unsi 阅读全文
posted @ 2013-06-28 22:20 路过你的苦 阅读(492) 评论(0) 推荐(0)
摘要: 1.哈希各种冲突消解策略比较(1)开放地址法(2)链接法链地址法处理冲突简单,且无堆积现象,即非同义词决不会发生冲突,因此平均查找长度较短;链地址法中链表的结点是动态申请的,故它更适合造表前无法确定表长的情况,开放定址法为了减少冲突要求填充因子较小,故结点规模较大时会浪费很多空间,而链地址法中填充因子可以大于1且结点较大时,拉链法中增加的指针域可以忽略不计,因此节省空间。2.父进程子进程(1)父子进程关系. 进程组处理进程组的概念是这样的,当系统启动时,第一个进程是init,其进程组号等于进程号,由他产生的任何子进程的进程组号也相同,子进程的子进程也继承该进程组号,这样,由init所生成的任何 阅读全文
posted @ 2013-06-28 11:14 路过你的苦 阅读(373) 评论(0) 推荐(0)