最近笔试题整理(二)

最近笔试题整理(二)

最近笔试题整理链接(1)

最近笔试题整理链接

算法题:二叉树遍历(人人网笔试)

有如下图所示(左)的一棵二叉树, 请设计一种遍历方式,使得按照如下方式(右)输出各个元素:(从下到上, 从右到左输出, 要求每层之间换行, 同行元素之间用tab分割,写出完整代码)

这里写图片描述

使用广度优先搜索bfs,遍历方式是从右子树开始遍历。遍历节点压栈,遍历之后出栈输出即为所需。

边界考虑:

  1. 如果只有一个节点?没问题
  2. 考虑树如果无节点
  3. 如果是完全二叉树,ok
  4. 如果是只有右孩子的二叉树,ok
  5. 如果只有左孩子的二叉树,ok

寻找Coder(去哪儿校招笔试题)

题目:请设计一个高效算法,再给定的字符串数组中,找到包含”Coder”的字符串(不区分大小写),并将其作为一个新的数组返回。结果字符串的顺序按照”Coder”出现的次数递减排列,若两个串中”Coder”出现的次数相同,则保持他们在原数组中的位置关系。

给定一个字符串数组A和它的大小n,请返回结果数组。保证原数组大小小于等于300,其中每个串的长度小于等于200。同时保证一定存在包含coder的字符串。

测试样例:

["i am a coder","Coder Coder","Code"],3
返回:["Coder Coder","i am a coder"]

简单思路:

两个基本操作:1. 搜索code,简单的字符串匹配;2. 根据code计数进行排序,计数排序就行,出现同频次的加入同一个队列

输出时遍历这n个排序队列

字符集合(华为笔试)

题目:输入一个字符串,求出该字符串包含的字符集合

输入描述:
每组数据输入一个字符串,字符串最大长度为100,且只包含字母,不可能为空串,区分大小写。

输出描述:
每组数据一行,按字符串原有的字符顺序,输出字符集合,即重复出现并靠后的字母不输出。

输入例子:
abcqweracb

输出例子:
abcqwer

简单思路

最简单的按字符的一个计数,遍历后输出;注意下边界、特殊值就好

华为面试题一直都是入门水平…没啥难度

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值