数据结构与算法 双链表的转置

一、实验内容

有一个带头结点的双链表L,设计一个算法将其所有元素逆置,即第一个元素变为最后一个元素,第2个元素变为倒数第2个元素,最后一个元素变为第1个元素。

二、实验步骤

1、dlinklist.cpp

2、reverse.cpp

三、实验结果

四、总结

1、实现双链表转置的算法,按个人理解是,将原双链表的头结点与后面的结点分开,将后面的结点逐个用头插的方法插到只含头结点的双链表中。

2、第二种方法,将头结点与后面结点断开,找到后面结点的最后一个结点,使用尾插法插入到只含头结点的双链表中也能实现链表的转置(缺点:严重增加算法的复杂度,增加cpu的负担,算法的速度变慢)

相关推荐
青山木3 小时前
Hot 100 --- 轮转数组
java·数据结构·算法
WBluuue6 小时前
数据结构与算法:有序表(二):跳表
数据结构·c++·算法·skiplist
不好听6137 小时前
深入理解链表:线性数据结构的另一面
javascript·数据结构
Queenie_Charlie8 小时前
哈夫曼树
数据结构·c++·哈夫曼树
Shan120510 小时前
经典问题——验证栈序列
数据结构·算法
漂流瓶jz11 小时前
UVA-1606 两亲性分子 题解答案代码 算法竞赛入门经典第二版
数据结构·算法·向量·aoapc·算法竞赛入门经典·atan2·浮点
Chen_harmony12 小时前
二、顺序表
数据结构
BAGAE12 小时前
星链卫星数据获取:从太空安全到实时通信的技术革命
网络·数据结构·数据库·算法·云计算·hbase
h_a_o777oah13 小时前
【算法专项】扩展域并查集:原理详解及解决大部分种类并查集问题(洛谷P5937 P2024 C++代码)
数据结构·c++·算法·acm·并查集·扩展域·逻辑建模
吴阿福|一人公司14 小时前
深度解析 Python 类变量修改的命名空间隔离
java·服务器·数据结构