HDU2025 查找最大元素【入门】
查找最大元素
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 63900 Accepted Submission(s): 34037
问题链接:HDU2025 查找最大元素。
问题简述:参见上文。
问题分析:
这个问题的关键是开始不知道字符串中的哪个字符最大,所以需要先看一遍字符串。知道最大字符之后,对字符串再过一遍即可,该插入字符串“(max)”的地方,插入即可。实在想不出有更好的算法,也许这就是最好的算法。
程序说明:
对于这个题,不用指针来做,就不够专业。用字符数组和字符串函数来做,只能算入门级别的做法。
做这个程序几次AC没过,问题出在没有每次都把变量max初始化上,好在有高人指点。看似简单的问题,吃亏往往在细节上。
这里给出了两种实现方法,一是使用指针,二是使用数组。
AC的C语言程序如下(数组):
/* HDU2025 查找最大元素 */#include <stdio.h>#define N 100
char s[N +1];int main(void)
{char max;int i;while(scanf("%s", s) != EOF) {max = '\0';// 查找最大字符for(i=0; s[i]; i++)if(s[i] > max)max = s[i];// 输出for(i=0; s[i]; i++) {printf("%c", s[i]);if(s[i] == max) // 最大字符则插入(max)printf("(max)");}printf("\n");}return 0;
}
AC的C语言程序如下(指针):
/* HDU2025 查找最大元素 */#include <stdio.h>int main(void)
{char s[100+1], max, *t;while(scanf("%s", s) != EOF) {max='\0';// 查找最大字符t = s;while(*t) {if(*t > max)max = *t;t++;}// 输出t = s;while(*t) {printf("%c", *t);if(*t == max) // 最大字符则插入(max)printf("(max)");t++;}printf("\n");}return 0;
}
HDU2025 查找最大元素【入门】相关推荐
- HDU2025 查找最大元素
问题链接:HDU2025 查找最大元素.这是一个入门训练题,用C语言编写程序. 问题简述:参见上述链接. 问题分析:这个问题的关键是开始不知道字符串中的哪个字符最大,所以需要先看一遍字符串.知道最大字 ...
- HDU2025 查找最大元素【最值】
查找最大元素 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submis ...
- java 二分查找_计算机入门必备算法——二分查找法
1.引言 笔者对于计算机的研究一直停滞不前,近期想对一些算法进行复习和进一步的研究,每天都会更新一个新的算法,算法有难有易,层层递进.不希望能学的有多么高深,只希望在一些最基本的算法上有编码的思路,或 ...
- 【Groovy】集合遍历 ( 使用集合的 find 方法查找集合元素 | 闭包中使用 == 作为查找匹配条件 | 闭包中使用 is 作为查找匹配条件 | 闭包使用 true 作为条件 | 代码示例 )
文章目录 一.使用集合的 find 方法查找集合元素 1.闭包中使用 == 作为查找匹配条件 2.闭包中使用 is 作为查找匹配条件 3.闭包中使用 true 作为查找匹配条件 二.完整代码示例 一. ...
- hdu 2025:查找最大元素(水题,顺序查找)
查找最大元素 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Sub ...
- 1.12 Java数组使用binarySearch()方法查找指定元素
查找数组是指从数组中查询指定位置的元素,或者查询某元素在指定数组中的位置.使用 Arrays 类的 binarySearch() 方法可以实现数组的查找,该方法可使用二分搜索法来搜索指定数组,以获得指 ...
- 【小米校招笔试】一个数组是由有序数组经过n次循环移动后所得,请你用最快速度查找某个元素位置
2016年小米校招笔试第二题(西安站) 2 现有一个数组是由有序数组经过n次循环移动后所得,请你用最快速度查找某个元素位置(如1234568,向右移动3次后为67812345). 参考解法(Java版 ...
- Jsoup(二)-- Jsoup查找DOM元素
一.Jsoup查找DOM元素的方法 getElementById(String id) 根据id 来查询DOM getElementsByTag(String tagName) 根据tag 名称来查询 ...
- 每天一道LeetCode-----有序数组右移n位后查找某个元素
Search in Rotated Sorted Array 原题链接Search in Rotated Sorted Array 一个无重复项的递增序列右移了一定距离,在右移后的序列中查找是否有某个 ...
最新文章
- 特写李飞飞:她激励了人工智能的发展,更要给人工智能赋予人的价值
- 牛客 - 树上博弈(思维)
- Machine Learning On Spark——基础数据结构(二)
- iPhone屏幕做一个最上层全屏幕的layer
- 业务多变的公司上云后蒸蒸日上
- jmap报错unknown CollectedHeap type : class sun.jvm.hotspot.gc_interface.CollectedHeap
- 诗与远方:无题(五十四)- 曾经写给妹子的一首诗
- Luogu4725 【模板】多项式对数函数(NTT+多项式求逆)
- 毕业论文管理系统——面向对象方法
- Gauss-Jordan法求逆矩阵
- SU(seismic unix)常用操作001——sgy文件与su文件的相互转化
- 移动端H5页面编辑器开发实战--原理结构篇
- android textview截断,Android Textview文字在底部被截断
- python初体验-hello world答案_Python初体验(一)—【配置环境变量】【变量】【input】【条件语句】【循环语句】...
- Linux系统/etc/resolv.conf文件为只读模式,且无法更改权限
- 大家注意了,猪八戒网上有个骗子
- Terra Gate 安装
- 代码战争之友人与敌人
- GaussDB数据类型介绍
- Qt程序打包成安装包exe