前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【数据结构】逆转链表

【数据结构】逆转链表

作者头像
程序员周同学
发布2019-07-23 10:20:05
3740
发布2019-07-23 10:20:05
举报
文章被收录于专栏:程序员周同学

01

前言

数据结构与算法课程是我们学校大二才会开始教学的一门课,但是由于我要参加一些比赛需要用到相关结构与算法,只得提早学习相关知识,了解相关内容。今天开始,每当自己学会一个相关数据结构的操作与算法的内容,我将在公众号中记录下来并且给大家仔细讲解。

再给大家讲解的过程中我自己也能理清相关思路,加深自己对相关内容的理解,一举多得。

在大一上学期的内容中,我们学到了单链表的构造与输出,今天想教大家的是单链表的逆转,这里所有的操作我都将用函数完成,因为在以后的学习或是工作中,我们需要让自己的代码简洁宜读。这样才会更好的融入集体并让集体接纳你的代码。

02

链表逆转

接下来是相关操作的内容了,我先来讲讲链表反转的具体思路

这是我最初的思路,最后能行,但是过程实在繁琐,因为不能通用,我就不发在这里了,这里主要讲我使用递归完成这题的思路。

下面贴出我的代码:

首先是建立链表所需要的结构体

创建链表的函数

输出链表的函数

下面用两种方法写逆转链表的函数

(!!!均未判断空链表)

第一种:递归,每次调用传递两个参数

第二种:循环,每次调用一个参数

最后是主函数

03

结束

其实观察仔细的同学会发现我的循环调用和递归调用的思路是一模一样的,的确,我实在先写出递归逆转之后才将它改写成循环逆转的,只是为了应对不同题的函数的参数调用个数的要求。

过两天将用函数实现链表的增删改查四个基本操作

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-01-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员周同学 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档