小米

刚刚小米面试我写了四十分钟树的后续遍历,没写出来,太丢人了。 它给的函数是

public ArrayList<Integer> xxx(TreeNode root)

我一直都在想这个ArrayList不能每次递归都创建一个呀,但是这个函数只让输入root呀,于是想啊想啊。确实一个多月没看过树了,可能以前学的也不好。是我太菜太菜了,这种程度的代码题没编上我都不敢和朋友说这也太丢人了,感觉我做的那一百多道题二刷的三十多道题就像个笑话。我的记忆力和理解力真的这么差吗。重新做了一下。

public int[] inorderTraversal (TreeNode root) {
        // write code here
        List<Integer> list=new ArrayList<>();
        def(root,list);
        int [] arr=new int[list.size()];
        for(int i=0;i<list.size();i++){
            arr[i]=list.get(i);
         }
        return arr;
      }
    
    public void def(TreeNode root,List<Integer> list){
        if(root==null){
            return;
        }
        def(root.left,list);     
        def(root.right,list);
         list.add(root.val);
        
    }

再多写一个函数就行了呗,谁规定只能写一个函数啊! 也没有项目,我想要不就这样吧,不必再努力了。我好菜啊,看似相同的时间,相同的努力,我的学习效率个学习结果比别人差了好多……

全部评论
紧张正常😭,很多时候我脑子空白,而且越质疑自己做不做的出来,越做不出来
点赞 回复 分享
发布于 2021-12-07 12:21
不新建函数也可以用栈写啊,或者双栈也可以
点赞 回复 分享
发布于 2021-12-13 16:07
我做了两道题 结果都不对 太尴尬了 😅
点赞 回复 分享
发布于 2021-12-13 20:34

相关推荐

头像
11-07 01:12
重庆大学 Java
精致的小松鼠人狠话不多:签哪了哥
点赞 评论 收藏
分享
jack_miller:我给我们导员说我不在这里转正,可能没三方签了。导员说没事学校催的时候帮我想办法应付一下
点赞 评论 收藏
分享
1 1 评论
分享
牛客网
牛客企业服务