链表题目--输出单链表中的倒数第k个节点

news/2024/9/22 14:41:05/

思路分析

算法:统计链表的长度,把倒数k转为顺说的n,然后输出第n个节点的数据

图解

在这里插入图片描述

完整代码

//输出链表中的倒数第k个节点
//算法:统计链表的长度,把倒数k转为顺数的n,然后输出第n个节点的数据
void  ReverseShow(List plist, int k)
{printf("倒数第%d个节点,", k);//倒数第-1个节点,errorif (k <= 0)//数据错误{printf("k必须大于0!\n");return;}int len = 0;//统计长度Node* p;//初始化为头节点的后继节点for (p = plist->next; p != NULL; p = p->next)//统计长度len++;//printf("长度为%d", len);//k的值不能大于链表的长度if (k > len){printf("k大于链表长度,错误!\n");return;}int n = len - k + 1;//把倒数第k转为顺数第n,从1开始p = plist->next;//第一个数据节点for (int i = 1; i < n; i++) //p走到第n个节点p = p->next;printf("%d\n", p->data);
}int main()
{Node head;InitList(&head);for (int i = 0; i < 10; i++)Insert_tail(&head, i);Show(&head);ReverseShow(&head, 0);ReverseShow(&head, 1);ReverseShow(&head, 5);ReverseShow(&head, 10);ReverseShow(&head, 15);return 0;
}

在这里插入图片描述


本篇完!


http://www.ppmy.cn/news/1430912.html

相关文章

Vue.js(自定义指令)

自定义指令 Vue.js中&#xff0c;除了预定义的13个指令外&#xff0c;还允许用户自定义扩展指令。创建自定义指令 inserted( el ){ //当元素被加载到DOM树时触发 .... el 为当前一个写有v-指令的DOM元素对象 函数中&#xff0c;执行原生的DOM API }})- 强调: ‘指令名’不用加…

Docker② —— Cgroups详解

1. 概述 Cgroups 的全称是control groups&#xff0c;cgroups为每种可以控制的资源定义了一个子系统。Cgroups分为三个部分&#xff1a; cgroup 本身&#xff1a;对进程进行分组hierarchy&#xff1a;将 cgroup 形成树形结构subsystem&#xff1a;真正起到限制作用的部组件 cp…

Practice Exam: Oracle Cloud Infrastructure Generative AI Professional

Practice Exam: Oracle Cloud Infrastructure Generative AI Professional 1. In the simplified workflow for managing and querying vector data, what is the role of indexing?2. In which scenario is soft prompting appropriate compared to other training styles?3…

Session工作原理

session用于服务器和浏览器在建立会话后创建的一个唯一凭证&#xff0c;当多个用户访问同一个服务&#xff0c;就会创建多个session在服务器端保存&#xff0c;这些session通过sessionManager来管理&#xff0c;每个session相当于一个map可以设置多个值存储当前浏览器会话设置的…

【刷题笔记】第七天

文章目录 [924. 尽量减少恶意软件的传播](https://leetcode.cn/problems/minimize-malware-spread/)方法一&#xff0c;并查集方法二&#xff0c;dfs [GCD and LCM ](https://vjudge.net.cn/problem/HDU-4497#authorKING_LRL) 924. 尽量减少恶意软件的传播 如果移除一个感染节…

地方政府专项债发债全过程-梳理

地方政府专项债发债全过程-梳理 一、什么是专项债&#xff1f; 地方政府专项债券&#xff08;以下简称“专项债券”&#xff09;&#xff0c;是指省、自治区、直辖市政府为有一定收益的公益性项目&#xff0c;发行的、约定一定期限内以公益性项目对应的&#xff0c;政府性基金…

Linux之命令行参数的原理以及实现,环境变量限时增加删除和永久增加删除以及代码获取环境变量

个人主页&#xff1a;点我进入主页 专栏分类&#xff1a;C语言初阶 C语言进阶 数据结构初阶 Linux C初阶 算法 欢迎大家点赞&#xff0c;评论&#xff0c;收藏。 一起努力&#xff0c;一起奔赴大厂 一.命令行参数 1.1main函数参数 在我们学习c语言时我们的main函数…

【ZZULIOJ】1076: 三位数求解(Java)

目录 题目描述 输入 输出 样例输入 Copy 样例输出 Copy 提示 code 题目描述 已知xyzyzzn&#xff0c;其中n是一个正整数&#xff0c;x、y、z都是数字&#xff08;0-9&#xff09;&#xff0c;编写一个程序求出x、y、z分别代表什么数字。如果无解&#xff0c;则输出“No…