- 博客(19)
- 资源 (9)
- 收藏
- 关注
原创 Nginx
一、信号控制:kill -信号 进程号TERM, INT快速关闭QUIT从容关闭HUP重载配置用新的配置开始新的工作进程从容关闭旧的工作进程USR1重新打开日志文件USR2平滑升级可执行程序。WINCH从容关闭工作进程
2016-03-27 14:35:45 360
原创 编程珠玑 第十三章 习题4 思考
编程珠玑第十三章 课后习题第4题:为链表重写相应的迭代版本课后习题给出了如下版本:可以避免对特殊情况的处理 void insert2(int x) { node **p; for (p = &head; (*p)->val next)) //找到第一个大于等于(*p)->val的节点 ; if ((*p)->val == x) //当已在表中,则直
2015-05-23 15:41:11 539
原创 《编程珠玑》 个人实现部分课后答案
第四章第7题:确定包围一个点两条线段。这个问题与给定一个数,在数组中找到最接近这个数的两个数是一样的,采用二分搜索实现:#includeusing namespace std;void find_approximate(int a[],int N,float x,int& low,int& high)//在数组a中找到最接近x的两个数,下标存于low和high中{ int L=0,
2015-05-14 18:50:23 1038
转载 不使用第三个变量交换两个变量的值
采用下面的方法,对于给定两个整数a,b,下面的异或运算可以实现a,b的交换,而无需借助第3个临时变量: 一: a = a ^ b; b = a ^ b;//(a ^ b) ^ b=a ^ (b ^ b)=a ^0=a,将a换到了b里 a = a ^ b;//a ^ b=(a ^ b)^ a=a ^ b^ a=a ^ a^ b=0^ b=b, 该值赋值给
2015-05-02 16:21:30 383
转载 寻找最大的K个数
寻找最大的前K个数选择问题的特殊情况是找最大者或最小者,这当然很简单了。还是一个特例找中位数。利用快速排序中的partition操作经过partition后,pivot左边的序列sa都大于pivot右边的序列sb;如果|sa|==K或者|sa|==K-1(当|sa|==K-1,则是左边的sa加上partition返回的那个元素组成K个数),则数组的前K个元素就是最大的前K个元素,算
2015-04-13 21:16:58 380
转载 鉴别毒水问题
有1000瓶水,其中有一瓶有剧毒(假设哪怕一个毒药分子在里面也能致命),现在给你10只小狗在24小时内通过小狗试药的方式鉴定出来哪瓶药有毒。情况1:假设小狗服药后2小时内即可判断是否中毒,鉴别方案有哪些?情况2:假设小狗服药之后20小时才能判断是否中毒,鉴别方案又是什么?对与情况1,由于要求24小时内得出结果,因此最多可以等待12次试验结果,因此可以采用简单的二分查找的方法找到有毒的水
2015-04-12 21:24:45 1005
转载 CUDA 与 OpenCL 区别
http://blog.csdn.net/babyfacer/article/details/6863572根据网站资料,简单地汇编一下CUDA与OpenCL的区别。如有错误请指出。题外话: 美国Sandia国家实验室一项模拟测试证明:由于存储机制和内存带宽的限制,16核、32核甚至64核处理器对于超级计算机来说,不仅不能带来性能提升,甚至可能导致效率的大幅度下降。
2015-04-06 17:44:01 401
转载 深入浅出CUDA编程
转自:http://blog.csdn.net/yanghangjun/article/details/6067534CUDA 是 NVIDIA 的 GPGPU 模型,它使用 C 语言为基础,可以直接以大多数人熟悉的 C 语言,写出在显示芯片上执行的程序,而不需要去学习特定的显示芯片的指令或是特殊的结构。”编者注:NVIDIA的GeFoce 8800GTX发布后
2015-04-06 17:31:49 406
转载 OpenMP使用经验总结
最近在看多核编程。简单来说,由于现在电脑CPU一般都有两个核,4核与8核的CPU也逐渐走入了寻常百姓家,传统的单线程编程方式难以发挥多核CPU的强大功能,于是多核编程应运而生。按照我的理解,多核编程可以认为是对多线程编程做了一定程度的抽象,提供一些简单的API,使得用户不必花费太多精力来了解多线程的底层知识,从而提高编程效率。这两天关注的多核编程的工具包括openMP和TBB。按照目前网上的讨论,
2015-04-06 14:04:20 487
转载 OpenMP与Cilk比较
比较一下Cilk Plus和OpenMP,以便我们在多线程编程时作出最恰当的选择。 一般我们把并行方式划分为两种:数据并行和任务并行。我们来看一下Cilk Plus和OpenMP在这两种并行方式下有什么不同的特点。 首先,在数据并行方面,使用OpenMP的相当容易上手,而且并行的效率也颇高,这也是OpenMP在HPC领域得到广泛应用的原因。OpenMP提供三种工作量的划分与调度:静
2015-04-06 14:02:56 2297
转载 STL总结
STL提供六大组件,彼此可以组合套用1、容器(containers):各种数据结构,如vertor,list,deque,set,map.从实现的角度来看,STL容器是一种class template2、算法(algorithms):各种算法如sort,search,copy,earse。STL算法是一种 function template。3、迭代器(iterators):扮演容器与
2015-04-05 20:04:38 682
转载 统计n!中0的个数
100阶乘末尾有多少个01×2×3.。。×1001 每隔5个,会产生一个0,比如 5, 10 ,15,20.。。2 每隔 5×5 个会多产生出一个0,比如 25,50,75,1003 每隔 5×5×5 会多出一个0,比如125.。。所以 100的末尾0的个数为100/5 + 100/25 = 20+4 = 24个 对于其它的数字,同样可以
2015-04-05 17:37:24 1834
转载 2014阿里巴巴9月14北京校园招聘笔试及参考答案
form:http://blog.csdn.net/lingfengtengfei/article/details/12344511from:http://blog.csdn.net/lingfengtengfei/article/details/12344511
2015-04-05 13:08:44 306
转载 dijkstra Bellman_Ford与Floyd算法的性质比较与实现
dijkstra,Bellman_Ford,Floyd算法的比较::Dijkstra算法,图所有边权值都为非负的;:Bellman_Ford算法,图中所有边权值可以存在负值,但是不能存在原点可达的负权回路,如果存在负权回路,该算法可以给出判断;:Floyd算法,不允许所有权值为负的回路,可以求出任意两点间的最短距离,而Dijkstra和Bellman_Ford算法只可以求出任意点到达源
2015-04-05 12:55:58 1339
转载 Bellman-Ford算法详讲
转载链接:http://www.wutianqi.com/?p=1912Dijkstra算法是处理单源最短路径的有效算法,但它局限于边的权值非负的情况,若图中出现权值为负的边,Dijkstra算法就会失效,求出的最短路径就可能是错的。这时候,就需要使用其他的算法来求解最短路径,Bellman-Ford算法就是其中最常用的一个。该算法由美国数学家理查德•贝尔曼(Richa
2015-04-05 12:54:06 354
转载 广度优先搜索和深度优先搜索
广度优先搜索广度优先搜索(BFS),可以被形象的描述为“浅尝辄止”,具体一点就是每个顶点只访问它的邻接节点(如果它的邻接节点没有被访问)并且记录这个邻接节点,当访问完它的邻接节点之后就结束这个顶点的访问。广度优先用到了“先进先出”队列,通过这个队列来存储第一次发现的节点,以便下一次的处理;而对于再次发现的节点,我们不予理会——不放入队列,因为再次发现的节点:无非是已经处理完
2015-04-04 19:04:26 1071
转载 稳定排序和不稳定排序
首先,排序算法的稳定性大家应该都知道,通俗地讲就是能保证排序前2个相等的数其在序列的前后位置顺序和排序后它们两个的前后位置顺序相同。在简单形式化一下,如果Ai = Aj,Ai原来在位置前,排序后Ai还是要在Aj位置前。 其次,说一下稳定性的好处。排序算法如果是稳定的,那么从一个键上排序,然后再从另一个键上排序,第一个键排序的结果可以为第二个键排序所用。基数排序就是这样,先按低位排
2015-04-04 10:30:05 358
转载 二叉查找树中节点的删除。思路
今天,在写数据结构的二叉查找树时,写到remove方法时,突然卡壳了。后来,打开书细看时,竟然耗费了不少时间才看懂。 现将思想记录下来,以免以后再次遗忘。 二叉查找树重要性质: (1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值;
2015-04-03 10:08:31 1283
转载 二叉查找树的删除算法
二叉查找树的实现中, 删除算法是最难的, 对于我来说, 尤其困惑了好长时间, 需要画图及一些想象力. 由于我的类中有一些成员对方法提供了支持, 所以先看看类的声明:public class BinaryTree { public TreeNode root; // 树根 private TreeNode parent; // 表示父
2015-04-03 10:06:32 358
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人