IT公司笔试算法集锦:逆序整数、平均分以上、回文判断与组合问题
需积分: 3 193 浏览量
更新于2024-07-27
收藏 91KB DOC 举报
"部分IT公司笔试算法题,包括逆序整数、寻找高于平均分的学生、回文判断和组合问题"
1、逆序整数:
在第一个题目中,我们需要实现一个递归函数`convert`来将整数逆序存入数组。这个函数的基本思想是将整数的每一位拆分开,然后从低位到高位存储。当`n`大于等于10时,我们递归调用`convert`处理除以10后的数,然后将当前位的余数(即原数的个位)存储到数组的第一个位置。在主函数`main`中,我们创建了一个足够大的数组`result`来存储逆序后的整数,并在最后打印结果。
2、求高于平均分的学生学号及成绩:
第二题的目标是找出所有分数高于平均分的学生。我们使用递归计算总分`total`和学生人数`n`,同时找到平均分。每次递归调用,我们读取一个学生的学号和分数,如果分数高于或等于平均分,就打印学号和分数。当没有更多学生时,返回当前的平均分。
3、回文判断:
第三题考察的是递归解决回文字符串的问题。函数`find`通过比较字符串首尾字符是否相等来决定是否是回文。如果字符串长度小于或等于1,那么它一定是回文。如果首尾字符相等,我们递归检查去掉首尾字符后的子串;否则,返回0表示不是回文。在主函数中,我们调用`find`并根据结果打印"Yes"或"No"。
4、组合问题:
第四题要求生成所有可能的组合,从给定的M个不同字符中选取N个。这是一个经典的组合问题,可以使用递归来解决。在`find`函数中,当需要选取的字符数`n`等于1时,我们将当前字符追加到结果字符串中并打印。否则,我们遍历源字符串中的每一个字符,将其作为新组合的开头,并递归处理剩下的字符和减1的`n`。
这些题目覆盖了递归、数组操作、基本的数学运算以及字符串处理等核心算法知识,对于准备IT公司的笔试非常有帮助。通过解决这些问题,考生可以提高自己在数据结构、算法和编程技巧方面的能力。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2022-05-06 上传
2009-12-04 上传
2009-11-04 上传
2010-04-13 上传
2010-05-17 上传
2008-09-10 上传
chenshanfeng123
- 粉丝: 12
- 资源: 25
最新资源
- Court-Counter:这个程序将帮助更新两队的得分
- changsikkwon.github.com
- 易语言DUI图形编辑器源码-易语言
- app-livetrace:Enonic XP的LiveTrace应用程序
- 代码前30天
- line-chatbot
- love_story
- 记录python,pytorch,git等工具的学习过程,主要是对该工具常用部分进行实践。.zip
- circuitry:Web Audio API 电路可视化工具
- dbms-online-voting-system:为了使投票更加安全并允许每个有资格投票的人
- 乌尔纳电子
- filess:ファイルを整理するためのCLIツール
- 简单的python爬虫学习.zip
- guava-12.0.1-API文档-中文版.zip
- 行业文档-设计装置-一种点钞机纸币回转系统.zip
- landing-page-with-form:带有表单的登录页面