4-40. 如果给你1,000,000个整数来排序,你会选择什么算法?消耗的时间和空间呢? 解析: 我个人倾向于用随机化的快速排序。 首先是它在平均意义上来看比同样O(nlogn)的归并排序和堆排序快(见4-41)。 另外,和堆排序相比,快速排序的元素扫描是线性 ...
第五章面试题解答 . DFS和BFS使用了哪些数据结构 解析: 其实刚读完这一章,我一开始想到的是用邻接表来表示图,但其实用邻接矩阵也能实现啊 后来才发现应该回答,BFS用队列实现 DFS可以用栈实现也可以改写成递归形式。用栈来消除递归改写DFS也出现在 算法导论 的练习题 . 。 . 写一个函数,在遍历二叉查找数的时候,输出第i个结点。 解析: 模仿DFS遍历时维护一个进入时间数组和完成时间数组 ...
2013-08-28 12:34 2 2436 推荐指数:
4-40. 如果给你1,000,000个整数来排序,你会选择什么算法?消耗的时间和空间呢? 解析: 我个人倾向于用随机化的快速排序。 首先是它在平均意义上来看比同样O(nlogn)的归并排序和堆排序快(见4-41)。 另外,和堆排序相比,快速排序的元素扫描是线性 ...
目录 系列简介 不用*和/计算整数除法 25匹马找出前5名 估算题样例 系列简介: 《算法设计手册》(The Algorithm Design Manual)是本比较经典的算法书了。如果说《算法导论》偏向于数学,那么《算法设计手册》更偏向于工程应用 ...
其他章节 1 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 ...
在这部分,我们将查看ThreadPool 类的多个方面并学习如何在我们的.NET 应用程序中使用ThreadPool 类的内容创建线程池。ThreadPool 类提供的线程可以用来做以下事情: 1. 处理工作组件 2. 处理异步I/O 调用 3. 处理定时器 4. 等待 ...
本章的之前部分内容主要介绍如何在.NET Framework 中使用线程池的概念。现在我们要介绍如何使用C# 实现创建并使用线程池的.NET 应用程序。如之前描述的那样,System.Threading 命名空间中包含的ThreadPool 类可以被用于在.NET 应用程序中创建一个线程池 ...
在这部分,我们将使用ThreadPool 和MSMQ 进行消息收发。MSMQ 是一个分布式队列,通过MSMQ 一个应用程序可以异步地与另外一个应用程序通信。 在一个典型的场景中,我们要向维护一个队列的MSMQ 服务器发送消息,MSMQ 发送方与MSMQ 服务器(特定队列)之间创建一个连接 ...
HashMap源码嘛,知道原理嘛? 针对这个问题,嗯,当然是必须看过HashMap源码。至于原理,下面那张图很 ...