链表中倒数第k个结点
来源:互联网 发布:linux清空tmp 编辑:程序博客网 时间:2024/05/18 01:48
题目描述:
输入一个链表,输出该链表中倒数第k个结点。
输入:
输入可能包含多个测试样例,输入以EOF结束。对于每个测试案例,输入的第一行为两个整数n和k(0<=n|k<=1000)n代表将要输入的链表元素的个数,k代表要查询倒数第几个的元素。输入的第二行包括n个数t(1<=t<=1000000):代表链表中的元素。
输出:
对应每个测试案例,若有结果,输出相应的查找结果。否则,输出NULL。
样例输入:
5 2
1 2 3 4 5
1 0
5
样例输出:
4
NULL
#include<stdio.h>#include<stdlib.h>typedef struct node { int data; struct node *next; }Lnode ,*Linklist;Linklist creatLinklist(int n){ Linklist H=NULL; Lnode *s,*r; int x; for(int i=0;i<n;i++) { scanf("%d",&x); s=(Lnode *)malloc(sizeof(Lnode)); s->data=x; if(H==NULL) H=s; else r->next=s; r=s; } if(r!=NULL) r->next=NULL; return H;}void Get_Lnode(Linklist H,int i){ Lnode *p=H; int j=1; while(j<i) { p=p->next; j++; } printf("%d\n",p->data);}int main(){ int n,k; while(scanf("%d",&n)!=EOF) { scanf("%d",&k); Linklist H=creatLinklist(n); if(k>n) printf("%s\n","NULL"); else Get_Lnode(H,n-k+1); }}
0 0
- 查找链表中倒数第k个结点
- 查找链表中倒数第k个结点
- 查找链表中倒数第k个结点
- 查找链表中倒数第k个结点
- 查找链表中倒数第 k个结点
- 查找链表中倒数第k个结点
- 查找链表中倒数第k个结点
- 输出链表中倒数第k个结点
- 查找链表中倒数第k个结点
- 查找链表中倒数第k个结点
- 链表中倒数第k个结点
- 链表中倒数第k个结点
- 查找链表中倒数第k 个结点
- 链表中倒数第k个结点
- 查找链表中倒数第k个结点
- 链表中倒数第k个结点
- 链表中倒数第k个结点[数据结构]
- 链表中倒数第k个结点
- OpenGL ES之GLSurfaceView学习四:Android Demo里的Cube分析
- 最简单的基于FFmpeg的AVfilter例子(水印叠加)
- 还是质数 NOJ 1732 超级暴力
- Service调用
- 【华为OJ】字符串反转
- 链表中倒数第k个结点
- 工厂模式与抽象工厂
- makefile 文档解析 学习一
- 黑马程序员_日记43_初学TreeSet
- Android应用Log分析入门
- 解题报告 之 POJ2112 Optimal Milking
- mybatis入门
- javascript一些纯对象操作记录
- notepad++运行网页文件