牛课堂第一季第九章8.pdfVIP

  • 0
  • 0
  • 约2.66千字
  • 约 8页
  • 2022-05-26 发布于北京
  • 举报
牛课堂 第九课 简介 牛课堂(第一季) 来袭 !我们再次邀请到左神为牛油们讲解 校招笔试面试算法题,相信大家一定能有所收获。 上课时间 :每周三20 :00--21 :30 上课老师 :左程云(个人斗鱼 间 : /zuochengyun),华科本 科,芝加哥大学 ,现任亚马逊技术 ,曾就职于IBM、 。 讨论群组 : ·牛课堂讨论 ·左神粉丝群:655812314 打赏左神 题目一 字符串的交错组成 【题目】 给定三个字符串str1、str2和aim。如果aim包含且仅包含来自str1和str2的所有字 符,而且在aim 中属于str1的字符之间保持原来在str1 中的顺序,属于str2的字符 之间保持原来在str2 中的顺序,那么称aim是str1和str2的交错组成。实现一个函 数,判断aim是否是str1和str2交错组成。 【举例】 str1=“AB”,str2=“12”。那么“AB12”、“A1B2”、“A12B”、“1A2B”和“1AB2”等等都 是str1和str2交错组成。 题目二 表达式得到期望结果的组成种数 【题目】 给定一个只由0(假)、1(真)、(逻辑与)、|(逻辑或)和^(异或)五种字符组成的字符 串express,再给定一个布尔值desired。返回express能有多少种组合方式,可 以达到desired的结果。 【举例】 express=“1^0|0|1”,desired=false。 只有1^((0|0)|1)和1^(0|(0|1))的组合可以得到false。返回2。 express=“1”,desired=false。 没有组合可以得到false。返回0。 题目三 排成一条线的纸牌博弈问题 【题目】 给定一个整型数组arr,代表数值不同的纸牌排成一条线。玩家A和玩家B依次拿走每 张纸牌,规定玩家A先拿,玩家B后拿,但是每个玩家每次只能拿走最左或最右的纸牌, 玩家A和玩家B都绝顶聪明。请返回最后获胜者的分数。 【举例】 arr=[1,2,100,4]。 开始时玩家A只能拿走1或4。如果玩家A拿走1,则排列变为[2,100,4],接下来玩家B 可以拿走2或4,然后继续轮到玩家A。如果开始时玩家A拿走4,则排列变为[1,2,100], 接下来玩家B可以拿走1或100,然后继续轮到玩家A。玩家A作为绝顶聪明的人 先 拿4,因为拿了4之后玩家B将拿走100。所以玩家A会先拿1,让排列变为[2,100,4], 接下来玩家B不管怎么选,100都会被玩家A拿走。玩家A会获胜,分数为101。所以返 回101。 arr=[1,100,2]。 开始时玩家A不管拿1还是2,玩家B作为绝顶聪明的人,都会把100拿走。玩家B会获 胜,分数为100。所以返回100。 Converting your business 5 from Good to Great. 题目四 字符串匹配问题 【题目】 给定字符串str,其中绝对不含有字符’.’和’*’。再给定字符串exp,其中可以含有’.’或’*’,’*’ 字符不能是exp的首字符,并且任意两个’*’字符不相邻。exp 中的’.’代表任何一个字符, exp 中的’*’表示’*’的前一个字符可以有0个或者多个。请写一个函数,判断str是否能被exp 匹配。 【举例】 str=“abc”,exp=“abc”。返回true。 str=“

文档评论(0)

1亿VIP精品文档

相关文档