华为od--笔试
作者:互联网
概述
- 今天的笔试有三道题
- 第一道是贪心算法
- 第二道是纯粹的编码题,与算法无关
- 第三道是二叉树的题目
求最小字符串
- 题目:
给定一个字符串,对字符串的其中两个字符最多能进行一次互换,求得到的最小字符串 eg1: 输入: abcdefg 输出: abcdefg 解释:因为字符串已经是能得到的最小字符串,所以无需进行互换 eg2: 输入: bcdekuira 输出: acdekuirb 解释:只能操作一次,那么就只能把a换到第一位来
- 贪心算法
- 只需要把字符串中最小的字符找到,调换位置到第一位,那么这就是这个字符串操作一次能得到的最小字符串
- 如果第一个字符已经是最小,则对除了第一个字符的字串进行操作
- 注意:
- 如果最小字串出现多次,取最后一次出现的位置进行调换
第二道问题
- 纯粹是对字符串进行切割,然后再进行计算
二叉树
- 题目:使用后序遍历序列和中序遍历序列构造二叉树,然后输入层次遍历序列
- 这道题纯粹就是糅合了构造二叉树和层次遍历
- leetcode 106. 从中序与后序遍历序列构造二叉树
- leecode 102. 二叉树的层序遍历
标签:字符,遍历,--,od,最小,序列,华为,二叉树,字符串 来源: https://www.cnblogs.com/cgengwei/p/16695141.html