单链表-单链表拆分为两个线性表(尾插法+尾插法)
题意:
设C{a1,b1,a2.b2…an,bn}为一线性表,采用带头结点的单链表hc存放,设计一个就地算法,将其拆分为两个线性表,每个线性表均采用带头结点的单链表存储,使得:
A = {a1,a2.a3.a4…an},
B = {b1,b2,b3.b4…bn}
单链表的存储结构:
typedef struct LinkList{int data;LinkList * next;}
分析:
这里的拆分线性表与拆分奇偶链表类似。
但是,但是这两者有啥不同呢?
1.前者是,在一个线性表当中,有奇数偶数,经过判断后拆分
2.这里是,在一个线性表中,第一个放入A表,第二个放入B表。第三个放入A表,第四个放入B表,不用经过判断。
思路:
1.定义一个指针变量p用于遍历,且定义两个尾指针ra,rb.生成新头结点B
2.通过while循环,从第一个开始插入,插入一个,后移一个
2.1 插入A,后移一个
2.2插入B,后移一个
3.最后将两者尾节点的指针域置为空。
C代码实现:
void Splist(LinkList *hc,LinkList * &ha, LinkList * &hb){LinkList * P = A->next,*ra,*rb; //遍历链表的指针p.两个尾指针。ra = hc;hb = (LinkList *)malloc(sizeof(LinkList));rb = hb;while(p!=null){ra->next = p;ra = p;p=p->next;//上面A表,下面B表。rb->next = p;rb = p;p= p->next;}ra->next = rb->next = null; //两尾节点指针域置为空。 }
单链表-单链表拆分为两个线性表(尾插法+尾插法)相关推荐
- 单链表-两个线性表的合并(不破坏原链表+尾插法)
题意: 令L1 = (X1,X2,X3,X4-Xn), L2 = (y1,y2,y3,y4-ym);是两个线性表.采用带头节点的链表存储,设计一个算法合并L1,L2,结果放在线性表L3中,要求如下: ...
- 单链表-两个线性表的合并1(破环原链表+尾插法)
题意: 令L1 = (X1,X2,X3,X4-Xn), L2 = (y1,y2,y3,y4-ym);是两个线性表.采用带头节点的链表存储,设计一个算法合并L1,L2,结果放在线性表L3中,要求如下: ...
- 【数据结构 C描述】有两个整数集合 A 和 B 分别用两个线性表 LA 和 LB 表示,求:一个新的集合A=A∪B,A仍然为纯集合,线性表采用链式存储方式。【单链表】
这是我的作业题,作业写完后再附到博客中,可能代码写得很烂.虽然是C语言写的,但是我在其中加入了C++的写法,例如cout.我懒得写printf的格式控制符,所以用cout来输出内容,这样我感觉简便多了 ...
- c语言两个线性表la lb,假设有两个集合A和B分别用两个线性表LA和LB表示,即.ppt
假设有两个集合A和B分别用两个线性表LA和LB表示,即.ppt 循环链表是单链表的变形. 循环链表最后一个结点的link指针不为 0 (NULL),而是指向了表的前端. 为简化操作,在循环链表中往往加 ...
- c语言两个线性表la lb,线性表La和线性表Lb合并
线性表La与Lb合并. 输入:两个线性表La和Lb. 过程:循环集合B中的每个元素,判断当前元素是否存在A中,若不存在,则插入到A中即可. 输出:合并后的线性表La. 代码如下 #include us ...
- c语言两个线性表la lb,有两个集合用两个线性表LA和LB表示即线性表中的数据元素即为集合中的成员现要求一个新的集合...
<有两个集合用两个线性表LA和LB表示即线性表中的数据元素即为集合中的成员现要求一个新的集合>由会员分享,可在线阅读,更多相关<有两个集合用两个线性表LA和LB表示即线性表中的数据元 ...
- 关于数据结构链表问题(C语言实现)—— 线性表顺序存储设计与实现
这是我的第一篇博客(内容为废话) 现在马上面临毕业的我,发现整理总结问题真的非常重要,刚刚开始学习数据结构,并且非科班出身的我,感觉得到压力非常大,所以开始学习完后在这进行回忆,复习学习.在这里要感谢 ...
- 删除所有奇数顺序表c语言,怎么将一个线性表(顺序表)拆分成两个奇偶表(C语言)?...
如何将线性表A拆分成线性表A和B,使得A存放奇数,B存放偶数? 1.基础函数 1.1 get取函数 int get(nod *la,int i) { return la->data[i]; } ...
- PHP表单提交的方式有哪两种,form表单提交数据的几种方式
一.submit提交 在form标签中添加action(提交的地址)和method(post),且有一个submit按钮()就可以进行数据的提交,每一个input标签都需要有一个name属性,才能进行 ...
最新文章
- coc跑团san数值规则_为什么B站上有些coc跑团7版规则san值四五十,但是掉的时候只是掉1D3,是不是应该是20上限?...
- confluence7安全补丁_centos7安装confluence遇到的问题
- 天天沉迷于皇上本宫的都是sb
- python中 普通方法_python中普通方法classmethod和staticmethod的区别与用法
- 英文Ubantu系统安装中文输入法
- 【SpringCloud】第五篇: 路由网关(zuul)
- 95-130-502-源码-source-ElasticSearch相关-ElasticSearch connector
- 哪些应用场景在使用语音连麦
- sas 分析家模块 安装,SAS9.3/9.4统计分析安装使用教程自学资料完整模块最新SID
- linux沙箱隔离_linux沙箱技术
- React hook必须要知道的知识: useEffect的cleanup
- 为什么let this=that
- 游戏‘微信打飞机 第一课
- ae制h5文字动画_html5酷炫的文字打字动画特效
- 什么是桌面虚拟化,实施桌面虚拟化有什么好处?
- 发现自己很失败。。。
- CDN,P2P,PCDN的区别?
- php实现远程下载文件到本地服务器指定目录
- 房价拐点已到,刚需可以持币等待购房好时机
- rust太阳能板发电教程_自制太阳能发电机详细教程(图文)