网易笔试求解

第一道题:二叉树字符编码找重复子树

给定一棵中序遍历的二叉树,如果当前树为空则表示为X,如果不为空则表示为(left_tree)cur_value(right_tree),其中left_tree和right_tree分别表示按此规则序列化之后的左右子树字符串。找出重复子树的数量,相同子树只计算一次。

输入:

字符编码的二叉树

输出:

重复子树的个数

例子:

输入:

((X)2(X))1(((X)4(X))3((X)2(X)))

输出:

1

解释:只有相同节点2

这题我的做法就是中心扩展找出所有可能的子树,利用哈希表来发现重复的子树,但是不知道为什么只过了66.7,并没有提示是超时等问题,想问问大佬的解决方案。

第二题:归元等运算

定义运算规则(=)为归元等,对于字符串string1和string2分别去重之后构成的字符集合S1和S2,如果S1和S2中的元素完全相等,则string1和string2就具有归元等的关系,如aabbc233 (=) a32bcca,因为两个字符串都是由a,b,c,2和3这五个字符组成的。

现给出一个字符串A和一组字符串B[n],问有多少种i和j的选择,可以满足等式B[i] + A (=) B[j]

输入:

第一行:字符串A

第二行:B中字符串的数量

第三行至最后一行:每行一个字符串:B1, B2, B3 ...

输出:

一共多少种组合,限制i不等于j,但是Bi可以等于Bj

这题我就疯狂哈希模拟了一波直接超时,求大佬的解决方案

#网易##网易春招##网易笔试##笔试##算法题#
全部评论
归元这道题用map<string>存储string和去重后的字符串集合;使用sort+unique排序去重的字符串;遍历时通过某种规则计算结果,详见 https://www.nowcoder.com/discuss/472115938377158656?sourceSSR=users</string>
2 回复 分享
发布于 2023-04-02 19:01 辽宁
第一个遇左括号推进stack,遇右括号发现一个子树,哈希表记录子树的次数可以过,第二个怎么弄求
1 回复 分享
发布于 2023-04-02 12:58 美国
大佬今天最后一题是用的dp吗
1 回复 分享
发布于 2023-04-02 12:54 福建
这两题我也非常暴力。第一个我干脆直接数有多少个重复数字了也 66。第二个模拟超时55。😂
1 回复 分享
发布于 2023-04-02 12:49 北京
第二题一样,不过我用set去存结果,只过了11%
1 回复 分享
发布于 2023-04-02 12:31 广东
大佬是投的雷火吗,我也投的雷火没收到笔试
点赞 回复 分享
发布于 2023-04-02 14:40 四川

相关推荐

🎓学历背景:双非土木硕👨‍💻意向职位:AI应用开发大佬们可以帮我看看简历吗,秋招至今0offer
秋招结束再玩瓦:今年科班都不好找哇……你可以试试交叉岗,比如制造业国企的一些开发算法,或者互联网的边缘岗,it技术支持,运维这些
我的简历长这样
点赞 评论 收藏
分享
09-22 09:42
门头沟学院 Java
牛客37185681...:马德,我感觉这是我面过最恶心的公司,一面是两个女hr,说什么实习前几个月属于试用期,试用期过了才能转成正式实习生,我***笑了,问待遇就是不说,问能不能接受全栈,沙币公司
如果可以选,你最想去哪家...
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务