论坛: 编程破解 标题: 归并线性表 复制本贴地址    
作者: mengxuehan [mengxuehan]    论坛用户   登录
我是刚刚学习tc环境下编程的,有点地方不懂,请教一下
把两个
递增有序排列的线性表A和B ,均以单链表作为存储结构请编写算法,将A 和B归并成一个按元素值递减
有序排列的线性表C
并要求利用原表(即A和B的)结点空间存放表C
谢谢!

286改了标题,原标题为:请教。


[此贴被 286(unique) 在 12月12日09时02分 编辑过]

地主 发表时间: 12/11 21:42

回复: 286 [unique]   版主   登录
1 把一个递增有序排列的线性表A转变成一个按元素值递减有序排列的线性表A。
应该不难吧。依次从A的当前位置取元素,存到A的最前面。
2 把B中的元素插入到A中。
应该不难吧。依次插入。
3 当然,在作一的时候可以同时作2。只需要A,B当前元素作个比较,以决定先插入哪个。

B1层 发表时间: 12/12 09:19

回复: spirn [spirn]   论坛用户   登录
最简单的算法,从a/b中找到最大的元素(实际上是比较A/B的最后一个元素),拿出来作为C的第一个元素,找到次大的,作为C的第二个元素,如此类推,当A/B没有元素的时候,解完


[此贴被 spirn(spirn) 在 12月12日11时50分 编辑过]

B2层 发表时间: 12/12 11:13

回复: 286 [unique]   版主   登录
TO spirn:
  你的方法理论上是可行的,但由于采用的是单链表而不是数组。所以效率会很低。

B3层 发表时间: 12/12 11:28

回复: spirn [spirn]   论坛用户   登录
呵呵,要快速就多用点空间,把a/b的指针分别压入2个栈,一个个弹出比较就可以

B4层 发表时间: 12/12 11:33

回复: realpope [realpope]   论坛用户   登录
这个没有必要在这里争论了 

算法 只要是数据结构的书上就会有的

随便找本看看就可以了

B5层 发表时间: 12/12 12:12

回复: lwei889 [lwei889]   论坛用户   登录
编程序不能只讲究某一个方面,不然数据结构这门课再开就没有什么意思拉!赞同286的意见!

B6层 发表时间: 12/12 12:40

回复: mengxuehan [mengxuehan]   论坛用户   登录
谢谢大家!我去试一下,多谢大家了呀!


B7层 发表时间: 12/12 17:09

论坛: 编程破解

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号