通过一趟遍历找出长度为n的单链表中值最大的节点.【数据结构】【单链表】
编写一个函数完成如下功能:通过一趟遍历找出长度为n的单链表中值最大的节点。
要求,在主函数中调用上面的函数测试。
提示:还需要定义其他函数,比如初始化链表,构造单链表,输出单链表。
输出结果:
代码展示:
#include<iostream>
using namespace std;
//定义单链表
typedef struct LNode
{int data;struct LNode* next;
}LNode, * LinkList;
//初始化单链表
int InitList(LinkList& L)
{L = new LNode;L->next = NULL;return 0;
}
//构造单链表
int ConsList(LinkList& L)
{cout << "请输入赋值的个数:";int n;cin >> n;cout << "请输入链表的值:";LinkList r = L;for (int i = 0; i < n; i++){LinkList p = new LNode;cin >> p->data;p->next = NULL;r->next = p;r = p;}return 0;
}
int printf(LinkList L)
{LinkList p = L->next;while (p){cout << p->data;p = p->next;}return 0;
}
int GetMax(LinkList L)
{LinkList p = L->next;int max = p->data;int count = 0;int index = 0;while (p){count++;if (p->data > max) {max = p->data;index = count;}p = p->next;}cout << "链表中值最大的结点是第" << index << "个结点,值为:" << max << endl;return max;
}
int main()
{LinkList L;InitList(L);ConsList(L);GetMax(L);return 0;
}
通过一趟遍历找出长度为n的单链表中值最大的节点.【数据结构】【单链表】相关推荐
- 从键盘输入 5 个学生姓名,利用字符串函数,找出长度最长的那个并输出。
从键盘输入 5 个学生姓名,利用字符串函数,找出长度最长的 那个并输出. #include <stdio.h> #include <string.h> int main(){c ...
- 单词搜索(给定一个二维网格和一个单词,找出该单词是否存在于网格中)
力扣 从二维数组中找字符串是否存在,而且同一个元素不能重复使用.这是字符串匹配类型题目,要记住方法.将二维数组简化成字符串,也就是字符串匹配了(依次遍历每个元素,将其当做开头,开始匹配). 1.可以想 ...
- 编写一个递归算法,找出从自然数1,2,3,…,n中任取r个数的所有组合。例如n=5,r=3时所有组合为543,542,541,532,531,521,432,431,421,321。
编写一个递归算法,找出从自然数1,2,3,-,n中任取r个数的所有组合.例如n=5,r=3时所有组合为543,542,541,532,531,521,432,431,421,321. 若设这n个自然数 ...
- 使用CE分析扫雷游戏,找到雷数的内存地址,找到低中高级的棋盘范围,找出地雷和别的数字在内存中的表示形式,猜测布雷算法
1.找到雷数的内存地址 1.1 按照雷数精确扫描,低中高分别为10,40,99,扫描结果有三个 1.2 右键棋盘任意位置,有一个地址数值变少,则那个地址就是雷数内存地址 2.找到低中高级的棋盘范围 2 ...
- 单词搜索:给定一个二维网格和一个单词,找出该单词是否存在于网格中java实现
题目描述 https://leetcode-cn.com/problems/word-search 给定一个二维网格和一个单词,找出该单词是否存在于网格中. 单词必须按照字母顺序,通过相邻的单元格内的 ...
- c语言找出链表中倒数第k的数,查找链表中倒数第k个结点
题目:输入一个单向链表,输出该链表中倒数第 k 个结点.链表的倒数第 0 个结点为链表的尾指针. 分析:为了得到倒数第 k 个结点,很自然的想法是先走到链表的尾端,再从尾端回溯 k 步.可是输入的是单 ...
- 写出一段代码将链表中的两个节点位置互换位置_面试 leetcode 算法专题系列(二)—— 链表...
前言:只照着常考题去刷题确实是一种方法.但调研之后发现自己还是考虑不周,刷题刷的不应该是题,而是解题的思路和熟练程度.于是我决定重新组织一下刷题笔记的讲解顺序,不再以面试常考题来刷.而是以面试出题频率 ...
- 给一个长度为n的字符串,找出长度为m的最小字典子序列【单调栈】
一个大大的分割线,如果这个傻逼题没有被作为某某复赛的签到题,可能我一会都一直傻逼下去了. [2019计蒜之道复赛--星云系统] 题目是,给出一个长度为n(1<n<5e6)的只有小写字母的字 ...
- 找出文件1中有而文件2中没有的数据
// 使用stream方法实现public static List<String> fileterData() throws IOException {String file1Conten ...
最新文章
- R.Java文件报错
- 38.6. Web IRC
- 内置函数sorted的10个小tips
- 【Flutter】自定义 Flutter 组件 ( 创建自定义 StatelessWidget、StatefulWidget 组件 | 调用自定义组件 )
- accessors 作用_lombok @Accessors用法详解(一看就能就懂)
- Android进阶知识:绘制流程(上)
- eggjs的参数校验模块egg-validate的使用和进一步定制化升级
- linux 内核编号含义_如何阅读linux内核代码?
- PHP的数据类型、浮点型比较
- java关闭通道_调用map方法后,Java 7文件通道未正确关闭
- ios学习笔记——对象归档
- php动态添加属性,php – Yii2.动态添加属性和规则到模型
- mysql 语句中last_Mysql函数:Last_insert_id()语法讲解
- windows核心编程之进程(3)
- 卸载不了mysql2008_卸载SQL2008遇到问题(重启计算机失败、找不到SQL卸载程序)的解决办法...
- 一键重装深度linux系统下载,一键安装操作系统下载win7
- BugKu web题目(bp)弱密码top1000
- 简单突破数据库备份路径拿shell
- html首字母样式,CSS实现段落首字母、首字放大特效
- 数据结构算法学习 之 红黑树