查找点链表中倒数第k个数
好久都没有写博文了,刚实习的我,有一点忘记的代码的编写。这是进公司实习的第一道编程题。
#ifndef _LINKLIST_
#define _LINKLIST_
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#define N 10 //产生随机数的个数
typedef int ElemType;
//定义节点类型
typedef struct Node{ElemType data;struct Node *pnext;
}Node;
Node *HeadInsertList();
Node *SeekTialList(Node *head,ElemType num);
#endif #include"LinkList.h"
Node *HeadInsertList(Node *head)
{Node *p = NULL;int i = 0;srand((unsigned int)time(0)); //随机数种子head = p = (Node *)malloc(sizeof(Node)); head-> data = rand()%101; head-> pnext = NULL; for(i=1;i<N;i++) { p = p->pnext = (Node *)malloc(sizeof(Node)); p->data = rand()%101; p->pnext = NULL; } for(p = head;p;p=p->pnext) printf("%d ",p->data); printf("\n");return head;
}
Node *SeekTialList(Node *head,ElemType num)
{Node *p = NULL;Node *q = NULL; p = q = head; if(num<=0) return NULL; while(num-1 > 0) {if(q->pnext!= NULL) q = q->pnext; else return NULL; num--; } while(q->pnext != NULL) { p = p->pnext; q = q->pnext; } return p;
}
int main()
{Node *head = NULL;int num = 0;head = HeadInsertList(head);printf("请输入倒数第几个");scanf("%d",&num);if(NULL == SeekTialList(head,num)){printf("no");}else{printf("%d",SeekTialList(head,num)->data);}printf("\n");system("pause");
}
转载于:https://blog.51cto.com/zhaoxiaohu/1748500
查找点链表中倒数第k个数相关推荐
- c语言找出链表中倒数第k的数,查找链表中倒数第k个结点
题目:输入一个单向链表,输出该链表中倒数第 k 个结点.链表的倒数第 0 个结点为链表的尾指针. 分析:为了得到倒数第 k 个结点,很自然的想法是先走到链表的尾端,再从尾端回溯 k 步.可是输入的是单 ...
- (关于单链表的真题)已知一个带有表头结点的单链表...请设计一个尽可能高效的算法,查找链表中倒数第k个位置的结点。
真题描述 已知一个带有表头结点的单链表,结点结构为 data next 假设该链表只给出了头指针head.在不改变链表的前提下,请设计一个尽可能高效的算法,查找链表中倒数第k个位置上的结点. 若查找成 ...
- 已知一个带有表头的单链表,结点结构为data-link,假设该链表只给出了头指针list。在不改变链表的前提下,请设计一个尽可能高效的算法,查找链表中倒数第k个位置上的结点(k为正整数)。
今天和大家分享一道2009年代码为408的一道真题: 已知一个带有表头的单链表,结点结构为data-link,假设该链表只给出了头指针list.在不改变链表的前提下,请设计一个尽可能高效的算法,查找链 ...
- 递增的整数序列链表的插入_每日算法题 | 剑指offer 链表专题 (5)链表中倒数第k个节点...
点击上方"Jerry的算法和NLP",选择"星标"公众号 重磅干货,第一时间送达 题目 链表中倒数第k个节点 题目要求 输入一个链表的头结点,从尾到头反过来打印 ...
- 剑指offer_第14题_链表中倒数第k个结点_Python
题目描述 输入一个链表,输出该链表中倒数第k个结点. 理解 链表详解 python数据结构之链表 解题思路 思路1 确定链表种结点个数lenth 倒数第k个结点就是第length-k+1个结点 需要考 ...
- 【剑指offer-Java版】15链表中倒数第K个结点
链表中倒数第K个结点:快慢指针解决 需要注意的地方是 1) 可能会存在输入的链表大小小于k 2) 输入的k可能小于等于0 - 所以必须限定k大于0 public class _Q15 {public ...
- 程序员面试题精选100题(09)-链表中倒数第k个结点[数据结构]
题目:输入一个单向链表,输出该链表中倒数第k个结点.链表的倒数第0个结点为链表的尾指针.链表结点定义如下: struct ListNode { int m_nKey; ...
- 《剑指offer》-- 链表中倒数第k个节点、反转链表、合并两个排序的链表
一.链表中倒数时第k个节点: 1.题目: 输入一个链表,输出该链表中倒数第k个结点. 2.解题思路:单链表具有单向移动的特性. (1)第一种:先遍历链表,算出链表节点数count,第二次直接遍历到第c ...
- 剑指offer 链表中倒数第k个节点
题目描述 输入一个链表,输出该链表中倒数第k个结点. 解决方案: public class Solution {public ListNode FindKthToTail(ListNode head, ...
最新文章
- [转]关于重定向RedirectAttributes的用法
- java连接pda_程序文件直接拷贝到pda设备 (USB连接pc pda wince6.0 C#)
- ARTS打卡计划第一周-Share-系统字典模块的设计
- 【ARM】Tiny4412裸板编程之Chip ID
- iOS进阶(XML、JSON数据解析)
- 算法导论 25.3 Johnson算法
- 一文了解IMU原理、误差模型、标定、惯性传感器选型以及IMU产品调研(含IMU、AHRS、VRU和INS区别)
- stm32 驱动ADXL345传感器例程(IIC驱动,可自行改SPI方式)
- Java程序员考研失败后的面试经历,oppo、VIVO、等面经
- python调用R语言
- Python动物图像分割API简单调用实例演示,阿里达摩院视觉智能开放平台使用步骤
- 一分钟了解“#include命令是干啥的”
- 重庆市计算机专业高考试题,职业高中高考计算机专业试卷5
- 移动 Web 最佳实践(干货长文,建议收藏)
- zabbix监控路由器流量
- 利用c#+jquery+ichartjs生成统计图表
- 树莓派远程音乐播放器
- 游戏背景音乐与音效存在于游戏中有什么特殊的意义?
- 通达信指标源码,一键自动改写成选股器
- Qt NMAKE : fatal error U1073: don‘t know how to make ‘xxxx‘的一种原因
热门文章
- Visual Studio2008的微软官方下载地址
- 使用结构、数组、循环和DataGridView写的分数统计小程序
- 理解 Delphi 的类(四) - 初识类的事件
- 民营企业的ERP之路
- pycharm中导入allure提示模块不存在解决方法
- java 调用office_JAVA调用PageOffice在线打开、编辑Word文档
- datax 高级_GitHub - xhhx55/DataX
- Web会话安全分析工具ProxyStrike
- 网络协议图形化分析工具EtherApe
- oracle cache keep pool,请问:alter table ……storage(buffer_pool keep) 与cache的区别