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

一、实验内容

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

二、实验步骤

1、dlinklist.cpp

2、reverse.cpp

三、实验结果

四、总结

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

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

相关推荐
m0_672703312 小时前
上机练习第51天
数据结构·c++·算法
仰泳的熊猫2 小时前
题目2577:蓝桥杯2020年第十一届省赛真题-走方格
数据结构·c++·算法·蓝桥杯
灰色小旋风3 小时前
力扣13 罗马数字转整数
数据结构·c++·算法·leetcode
ccLianLian4 小时前
数论·欧拉函数
数据结构·算法
会编程的土豆5 小时前
C++中的 lower_bound 和 upper_bound:一篇讲清楚
java·数据结构·算法
HUTAC5 小时前
关于进制转换及其应用的算法题总结
数据结构·c++·算法
XW01059996 小时前
6-函数-1 使用函数求特殊a串数列和
数据结构·python·算法
沉鱼.446 小时前
枚举问题集
java·数据结构·算法
罗超驿6 小时前
Java数据结构_栈_算法题
java·数据结构·
️是787 小时前
信息奥赛一本通—编程启蒙(3346:【例60.3】 找素数)
数据结构·c++·算法