打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
华为算法面试经典题目,各种字符串操作算法,快来收藏

华为

华为

题目一:字符串个数统计

字符串个数统计一个很常用的算法。在字符串操作算法中,属于一个比较简单一些的算法题。但是如果进行扩展的话,还是可以难倒一大部分人的。下面开始看题目。

题目:编写一个函数,计算字符串中含有的不同字符的个数。字符在ACSII码范围内(0~127),换行表示结束符,不算在字符里。不在范围内的不作统计。算法的Java实现代码如下所示:

字符串个数统计

题目二:字符串反转

字符串翻转其实类似于入栈出栈的过程,后进先出。因此实现时,可以考虑用栈来实现。

题目:写出一个程序,接受一个字符串,然后输出该字符串反转后的字符串。(字符串长度不超过1000)。下面我们写出该问题的Java代码实现方式,如下图:

字符串反转

题目三:句子逆序

句子逆序和字符串翻转还是有一定的区别的,不过原理大致相同。也可以采取入栈出栈的方式。只不过句子是以单词为单位。

题目: 将一个英文语句以单词为单位逆序排放。例如“I am a boy”,逆序排放后为“boy a am I”。所有单词之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符。该问题的Java代码实现如下:

句子逆序

题目四:字符串的连接最长路径查询

这个题目看上去是不是感觉很难的样子?其实不难哦,下面给出一道题目你就知道了。

题目:给定n个字符串,请对n个字符串按照字典序排列。

输入描述: 输入第一行为一个正整数n(1≤n≤1000),下面n行为n个字符串(字符串长度≤100),字符串中只含有大小写字母。输出描述:‍‍数据输出n行,输出结果为按照字典序排列的字符串。本道题目的Java代码实现方式如下图:

字符串的连接最长路径查询

题目五:合并表记录

这是今天分享的最有难度的一道题目了。也是今天分享的最后一道题目。

题目: 数据表记录包含表索引和数值(int范围的整数),请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照key值升序进行输出。

输入先输入键值对的个数,然后输入成对的index和value值,以空格隔开。输出描述输出合并后的键值对(多行)。算法代码实现如下图所示:

合并表记录

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
微软公司等数据结构+算法面试100题
【强烈推荐收藏】坚持3个月爆肝华为机试108题C++全解(适合新手入门,就业必刷套题)
面试常见的四种算法思想,全在这里了
题目 1093:【蓝桥杯】【入门题】字符逆序
leetcode 刷500道题,笔试/面试到底稳不稳
算法34(给一串很长字符串,要求找到符合要求的字符串,例如目的串:123,1******3***2 ,12*****3这些都要找出来)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服