一个贪心算法解决排序问题

47522341 2006-07-05 10:44:34
给定k个排好序的序列s1,s2,s3,…sk,用2路合并算法将这k个序列合并成一个序列。假设所采用的2路合并算法合并2个长度分别为m和n的序列需要m+n-1次比较。试设计一个算法确定合并这个序列的最优合并顺序,使所需的总的比较次数最少。
...全文
401 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
47522341 2006-07-08
  • 打赏
  • 举报
回复
问题解决了:

对排序后的序列S,首先归并项数最小的两个序列S1-S2->S12,对得到的中间结果集合S12,S3,…Sk进行排序;然后依次归并S12-S3->S123…循环执行k-1次归并操作,直至得到一个序列S12…k.。
47522341 2006-07-08
  • 打赏
  • 举报
回复
我觉得应该是考虑将不合并的多项式的项值最大。

一个思路是:
1,将所给各多项式按非减排序;
2,对排序结果进行两两归并,如果项数为偶数,其归并结果必然为有序,否则,将最后一项插入归并后的结果序列中;
3,循环第二步操作,直到得到的结果为一个多项式;
eqxu 2006-07-07
  • 打赏
  • 举报
回复
2、在这些里面数据里进行内聚的比例操作。

就是将序列的长度跟序列的跨度做比得出序列的跨度比,做贪心算法
eqxu 2006-07-07
  • 打赏
  • 举报
回复
1、 我觉得解决这种问题的第一个思想就是先将跨度最小的几个先行合并
因为这样做就做到了高内聚


这个得比较次数是k次,做了k次减法操作

2、
  在有关算法的书中,有一些叙述非常严谨,但不够全面;另一些涉及了大量的题材,但又缺乏严谨性。本书将严谨性和全面性融为一体,深入讨论各类算法,并着力使这些算法的设计和分析能为各个层次的读者接受。全书各章自成体系,可以作为独立的学习单元;算法以英语和伪代码的形式描述,具备初步程序设计经验的人就能看懂;说明和解释力求浅显易懂,不失深度和数学严谨性。 《算法导论(原书第3版)》选材经典、内容丰富、结构合理、逻辑清晰,对本科生的数据结构课程和研究生的算法课程都是非常实用的教材,在it专业人员的职业生涯中,本书也是一本案头必备的参考书或工程实践手册。    第3版的主要变化:    新增了van emde boas树和多线程算法,并且将矩阵基础移至附录。    修订了递归式(现在称为“分治策略”)那一章的内容,更广泛地覆盖分治法。    移除两章很少讲授的内容:二项堆和排序网络。    修订了动态规划和贪心算法相关内容。    流网络相关材料现在基于边上的全部流。    由于关于矩阵基础和strassen算法的材料移到了其他章,矩阵运算这一章的内容所占篇幅更小。    修改了对knuth-morris-pratt字符串匹配算法的讨论。    新增100道练习和28道思考题,还更新并补充了参考文献。

13,100

社区成员

发帖
与我相关
我的任务
社区描述
Java J2ME
社区管理员
  • J2ME社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧