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

一、实验内容

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

二、实验步骤

1、dlinklist.cpp

2、reverse.cpp

三、实验结果

四、总结

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

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

相关推荐
im_AMBER1 小时前
Leetcode 74 K 和数对的最大数目
数据结构·笔记·学习·算法·leetcode
长安er2 小时前
LeetCode 206/92/25 链表翻转问题-“盒子-标签-纸条模型”
java·数据结构·算法·leetcode·链表·链表翻转
lxh01132 小时前
最长递增子序列
前端·数据结构·算法
菜鸟233号4 小时前
力扣513 找树左下角的值 java实现
java·数据结构·算法·leetcode
FMRbpm4 小时前
队列练习--------最近的请求次数(LeetCode 933)
数据结构·c++·leetcode·新手入门
长安er6 小时前
LeetCode 34排序数组中查找元素的第一个和最后一个位置-二分查找
数据结构·算法·leetcode·二分查找·力扣
liu****7 小时前
9.二叉树(一)
c语言·开发语言·数据结构·算法·链表
sin_hielo7 小时前
leetcode 3577
数据结构·算法·leetcode
CS创新实验室9 小时前
计算机考研408【数据结构】核心知识点总结
数据结构·考研·计算机·408
步达硬件10 小时前
【matlab】代码库-一维线性插值
数据结构·算法·matlab