上一页 1 ··· 16 17 18 19 20 21 22 23 24 ··· 35 下一页
摘要: 1.4.30一个栈和一个steque实现的双向队列。使用一个栈和steque实现一个双向队列(请见练习1.3.32),使得双向队列的每个操作所需的栈和steque操作均摊后为一个常数。答:public class E1d4d30<Item>{ Stack<Item> s=new Stack<Item 阅读全文
posted @ 2018-10-26 09:21 修电脑的龙生 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 1.4.31三个栈实现的双向队列。使用三个栈实现一个双向队列,使得双向队列的每个操作所需的栈操作均摊后为一个常数。答:public class E1d4d31<Item>{ Stack<Item> sLeft=new Stack<Item>(); Stack<Item> sRight=new Sta 阅读全文
posted @ 2018-10-26 09:21 修电脑的龙生 阅读(579) 评论(0) 推荐(0) 编辑
摘要: 1.4.29两个栈实现的steque。用两个栈实现一个steque(请见练习1.3.32),使得每个steque操作所需的栈操作均摊后为一个常数。答:public class E1d4d29<Item>{ Stack<Item> s1=new Stack<Item>(); Stack<Item> s 阅读全文
posted @ 2018-10-26 09:19 修电脑的龙生 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 1.4.27两个栈实现队列。用两个栈实现一个队列,使得每个队列操作所需的堆栈操作均摊后为一个常数。提示:如果将所有元素压入栈再弹出,它们的顺序就被颠倒了。如果再次重复这个过程,它们的顺序则会复原。答:Algs4-1.3.4X栈与队列-两个栈实现一个队列均摊O(1) 阅读全文
posted @ 2018-10-26 09:18 修电脑的龙生 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 1.4.28一个队列实现的栈。使用一个队列实现一个栈,使得每个栈操作所需的队列操作数量为线性级别。提示:要删除一个元素,将队列中的所有元素一一出列,除了最后一个元素,应该将它删除并返回(这种方法的确非常低效)。答:public class E1d4d28<Item>{ Queue<Item> q=n 阅读全文
posted @ 2018-10-26 09:18 修电脑的龙生 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 1.4.26三点共线。假设有一个算法,接受平面上的N个点并能够返回在同一条直线上的三个点的组数。证明你能够用这个算法解决3-sum问题。强烈提示:使用代数证明当且仅当a+b+c=0时(a,a^3)、(b,b^3)和(c,c^3)在同一条直线上。 阅读全文
posted @ 2018-10-26 09:16 修电脑的龙生 阅读(347) 评论(0) 推荐(0) 编辑
摘要: 1.4.24扔鸡蛋。假设你面前有一栋N层的大楼和许多鸡蛋,假设将鸡蛋从F层或者更高的地方扔下鸡蛋才会摔碎,否则则不会。首先,设计一种策略来确定F的值,其中扔 ~logN次鸡蛋后摔碎的鸡蛋数量为~logN,然后想办法将成本降低到~2logF。答:public class E1d4d24{ public 阅读全文
posted @ 2018-10-26 09:15 修电脑的龙生 阅读(391) 评论(0) 推荐(0) 编辑
摘要: 1.4.25扔两个鸡蛋。和上一题相同的问题,但现在假设你只有两个鸡蛋,而你的成本模型则是扔鸡蛋的次数。设计一种策略,最多扔2sqrt(N)次鸡蛋即可判断出F的值,然后想办法把这个成本降低到~c.sqrt(F)次。这和查找命中(鸡蛋完好无损)比未命中(鸡蛋被摔碎)的成本小得多的情形类似。答:1)~2s 阅读全文
posted @ 2018-10-26 09:15 修电脑的龙生 阅读(402) 评论(0) 推荐(0) 编辑
摘要: 1.4.23分数的二分查找。设计一个算法,使用对数级别的比较次数找出有理数p/q,其中0<p<q<N,比较形式为给定的数是否小于x?提示:两个分母均小于N的有理数之间不小于1/N^2。 阅读全文
posted @ 2018-10-26 09:14 修电脑的龙生 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 1.4.22仅用加减实现的二分查找(Mihai Patrascu)。编写一个程序,给定一个含有N个不同int值的按照升序排列的数组,判断它是否含有给定的整数。只能使用加法和减法以及常数的额外内存空间。程序运行时间在最坏情况下应该和logN成正比。答:用斐波纳契数代替2的幂(二分法)进行查找。用两个变 阅读全文
posted @ 2018-10-26 09:13 修电脑的龙生 阅读(444) 评论(2) 推荐(1) 编辑
上一页 1 ··· 16 17 18 19 20 21 22 23 24 ··· 35 下一页