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

一、实验内容

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

二、实验步骤

1、dlinklist.cpp

2、reverse.cpp

三、实验结果

四、总结

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

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

相关推荐
xrgs_shz6 小时前
MATLAB的数据类型和各类数据类型转化示例
开发语言·数据结构·matlab
独正己身6 小时前
代码随想录day4
数据结构·c++·算法
Rachela_z9 小时前
代码随想录算法训练营第十四天| 二叉树2
数据结构·算法
细嗅蔷薇@9 小时前
迪杰斯特拉(Dijkstra)算法
数据结构·算法
S-X-S10 小时前
算法总结-数组/字符串
java·数据结构·算法
努力学习java的哈吉米大王11 小时前
数据结构-队列
数据结构
萌の鱼11 小时前
leetcode 2080. 区间内查询数字的频率
数据结构·c++·算法·leetcode
萝卜青今天也要开心13 小时前
读书笔记-《Redis设计与实现》(一)数据结构与对象(下)
java·数据结构·redis·学习
逊嘘15 小时前
【Java数据结构】了解排序相关算法
数据结构·算法·排序算法
_周游16 小时前
【数据结构】_链表经典算法OJ(力扣/牛客第二弹)
数据结构·算法·链表