您当前的位置:首页 > 电脑百科 > 程序开发 > 算法

程序算法设计,华为面试题中的算法考了这些内容

时间:2020-09-14 13:23:03  来源:  作者:

就像网上说的一样,一般进入互联网大厂,算法考核是必备的。华为算是中国软件公司中非常厉害的存在了。因此华为的算法面试题对于我们来说,有一定的参考价值。这篇文章,是我日常学习以及收集资料时,总结的一些华为的算法面试题目,这里和大家分享一下,希望对感兴趣的小伙伴有一定的帮助。

程序算法设计,华为面试题中的算法考了这些内容

华为算法面试

题目一:计算字符串最后一个单词的长度

题目描述:输入一行字符串,非空,长度小于5000,单词之间以空格隔开。求最后一个单子的长度。例如:Hello World则输出长度为5。

这道题目的整体难度不是很难,相信很多小伙伴都能做出来。这里我和大家分享一下其中的一种解法。用JAVA代码的实现方式如下图所示:

程序算法设计,华为面试题中的算法考了这些内容

计算字符串最后一个单词的长度

题目二:求字符串中某个字符出现的次数

题目描述:写出一个程序,接受一个由字母和数字组成的字符串,和一个字符,然后输出输入字符串中含有该字符的个数。不区分大小写。

这道题目难度也不是很难,用来求取字符串出现的次数。相比第一道题目,这道题目可能代码会长一些,但是其实算法思路不是很难的。用Java代码实现的代码如下:

程序算法设计,华为面试题中的算法考了这些内容

求字符串中某个字符出现的次数

题目三:字符串拆分

题目描述:连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组;长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。

本道题目主要是做字符串拆分,将一个字符串按照8的倍数来拆分。不足的按照后面补0来处理。相信很多小伙伴都有思路了吧。首先判断字符串是否是8的倍数,然后不是的话,补足0即可,紧接着按照8的倍数进行拆分即可。Java实现代码如下:

程序算法设计,华为面试题中的算法考了这些内容

字符串拆分题目

题目四:求一个整数的所有质因子

题目描述:输入一个正整数,按照从小到大的顺序输出它的所有质因子(如180的质因子为2 2 3 3 5 ),要求最后一个数后面也要有空格。

本道题目的重点在于理解质因子是什么意思,质因子(或质因数)在数论里是指能整除给定正整数的质数。如果还不懂的小伙伴可以查看百度百科哦。只要明白了质因子的概念,那么本道题目也就没有什么难度了。废话不说,直接上代码:

程序算法设计,华为面试题中的算法考了这些内容

求一个整数的所有质因子

题目五:数据表相同索引值的求个运算

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

这道题目主要用于判断索引值相同的值的求和运算,在一些语言中,已经有了实现方式,这里我们也可以根据自己的思路进行代码编写,实现这个方法。本道题目的Java代码实现如下:

程序算法设计,华为面试题中的算法考了这些内容

数据表相同索引值的求和运算

上面的代码介绍了一些华为面试题中的字符串以及数值的算法题目。这些题目其实整体难度不大,但是却可以通过代码优化,考查面试中的算法能力。由于篇幅原因,这里其他的一些算法,就不再分享了,感兴趣的小伙伴,可以私信或者关注我。我会把源代码分享出来,当然还有其他的一些题目也在其中。

其他题目还包括但不限于:

  1. 提取不重复的数字;
  2. 字符串个数统计;
  3. 数字颠倒;
  4. 字符串翻转;
  5. 句子逆序;
  6. 字符串的连接最长路径查询;
  7. 求int型正整数在内存中存储时1的个数。

希望通过一些算法题目的分享和学习,提升自己的算法水平,同时也可以通过算法编程,强化自己的编程能力。当然,这些算法题目,尽量不要复制粘贴,有条件的话,还是自己手动验证一下,才会有更好的效果。



Tags:算法设计   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
前言Kafka 中有很多延时操作,比如对于耗时的网络请求(比如 Produce 是等待 ISR 副本复制成功)会被封装成 DelayOperation 进行延迟处理操作,防止阻塞 Kafka请求处理线程。Kafka...【详细内容】
2021-12-27  Tags: 算法设计  点击:(1)  评论:(0)  加入收藏
就像网上说的一样,一般进入互联网大厂,算法考核是必备的。华为算是中国软件公司中非常厉害的存在了。因此华为的算法面试题对于我们来说,有一定的参考价值。这篇文章,是我日常学...【详细内容】
2020-09-14  Tags: 算法设计  点击:(91)  评论:(0)  加入收藏
从广义上讲,很多算法解决问题的思路是相同的。因此,为了方便,通常按照算法采用的方法和思路来给它们分类。这样给算法分类的一个原因是:如果我们理解了它采用的一般思路我们常常...【详细内容】
2020-08-04  Tags: 算法设计  点击:(58)  评论:(0)  加入收藏
在美图公司社交战略部署下,推荐算法存在多方面的挑战,为了解决这些挑战,我们团队从工具和算法两个方面分别开展了工作。...【详细内容】
2019-09-09  Tags: 算法设计  点击:(134)  评论:(0)  加入收藏
▌简易百科推荐
前言Kafka 中有很多延时操作,比如对于耗时的网络请求(比如 Produce 是等待 ISR 副本复制成功)会被封装成 DelayOperation 进行延迟处理操作,防止阻塞 Kafka请求处理线程。Kafka...【详细内容】
2021-12-27  Java技术那些事    Tags:时间轮   点击:(1)  评论:(0)  加入收藏
博雯 发自 凹非寺量子位 报道 | 公众号 QbitAI在炼丹过程中,为了减少训练所需资源,MLer有时会将大型复杂的大模型“蒸馏”为较小的模型,同时还要保证与压缩前相当的结果。这就...【详细内容】
2021-12-24  量子位    Tags:蒸馏法   点击:(9)  评论:(0)  加入收藏
分稀疏重建和稠密重建两类:稀疏重建:使用RGB相机SLAMOrb-slam,Orb-slam2,orb-slam3:工程地址在: http://webdiis.unizar.es/~raulmur/orbslam/ DSO(Direct Sparse Odometry)因为...【详细内容】
2021-12-23  老师明明可以靠颜值    Tags:算法   点击:(7)  评论:(0)  加入收藏
1. 基本概念希尔排序又叫递减增量排序算法,它是在直接插入排序算法的基础上进行改进而来的,综合来说它的效率肯定是要高于直接插入排序算法的;希尔排序是一种不稳定的排序算法...【详细内容】
2021-12-22  青石野草    Tags:希尔排序   点击:(6)  评论:(0)  加入收藏
ROP是一种技巧,我们对execve函数进行拼凑来进行system /bin/sh。栈迁移的特征是溢出0x10个字符,在本次getshell中,还碰到了如何利用printf函数来进行canary的泄露。ROP+栈迁移...【详细内容】
2021-12-15  星云博创    Tags:栈迁移   点击:(19)  评论:(0)  加入收藏
一、什么是冒泡排序1.1、文字描述冒泡排序是一种简单的排序算法。它重复地走访要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地...【详细内容】
2021-12-15    晓掌柜丶韶华  Tags:排序算法   点击:(16)  评论:(0)  加入收藏
在了解golang的map之前,我们需要了解哈希这个概念。哈希表,又称散列表(Hash table),是根据键(key)而直接访问在内存储存位置的数据结构。也就是说,它通过计算出一个键值的函数,将...【详细内容】
2021-12-07  一棵梧桐木    Tags:哈希表   点击:(13)  评论:(0)  加入收藏
前面文章在谈论分布式唯一ID生成的时候,有提到雪花算法,这一次,我们详细点讲解,只讲它。SnowFlake算法据国家大气研究中心的查尔斯·奈特称,一般的雪花大约由10^19个水分子...【详细内容】
2021-11-17  小心程序猿QAQ    Tags:雪花算法   点击:(24)  评论:(0)  加入收藏
导读:在大数据时代,对复杂数据结构中的各数据项进行有效的排序和查找的能力非常重要,因为很多现代算法都需要用到它。在为数据恰当选择排序和查找策略时,需要根据数据的规模和类型进行判断。尽管不同策略最终得到的结果完...【详细内容】
2021-11-04  华章科技    Tags:排序算法   点击:(37)  评论:(0)  加入收藏
这是我在网上找的资源的一个总结,会先给出一个我看了觉得还行的关于算法的讲解,再配上实现的代码: Original author: Bill_Hoo Original Address: http://blog.sina.com.cn/s/bl...【详细内容】
2021-11-04  有AI野心的电工和码农    Tags: KMP算法   点击:(36)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条