其他分享
首页 > 其他分享> > 华为笔试题

华为笔试题

作者:互联网

笔试三道算法题(难度依次递增)

1.有重复字符串(全小写)全排列个数。(易)

例如:abb=>{abb,bab,bba}个数为3,等价于3!/(1!*2!) = 6/(1*2) = 3

2.长度为M的字符串(全小写),去掉K个字符返回字典序最小的子串(M>=K),如果去掉K个字符之后字符串为空则返回“0”,否则返回删除后字典序最小的子串。(中)

例如:字符串为bacaa,去掉2个字符,返回baaa 

3.n个顶点间有相互连接的m条单行道,每条道路有长度L和路费T。初始条件有顶点个数n,m行的道路连接,长度和路费情况以及初始的路费K。能否从顶点1到顶点n花费路费小于等于K的情况下返回最短路径,如果没有返回-1。(难)

例如:

4 5 6
1 2 3 2
1 3 2 3
1 4 1 8
2 4 5 3
3 4 7 2

解释:
第一行:4个顶点,5条道路,最大花费为6
第二行:顶点1到顶点2单行道,长度为3路费为2
...... 

结果是:从顶点1到顶点4,先从1->2->4,花费为5满足条件,长度为8最小

 

标签:出栈,栈顶,笔试,个数,华为,路费,字符串,顶点
来源: https://www.cnblogs.com/zhihaospace/p/12811856.html