美文网首页
我以为那是才华

我以为那是才华

作者: 小傻黑 | 来源:发表于2019-08-02 07:40 被阅读0次

最近从同事那拿了一本叫《漫画算法》的书,里面图文并茂,非常适合算法入门或者回顾,分享一个我在看书过程中的一个小故事。

当时看到了一段代码,着实让我纠结了一阵:

 public static TreeNode createBinaryTree(LinedList<Integer> inputList) {
     TreeNode node  = null;
     if (inputList == null || inputList.isEmpty()) {
        return null;
    }
    Integer data = inputList.removeFirst();
    if (data != null) {
        node = new TreeNode(data);
        node.leftChild = createBinaryTree(inputList);
        node.rightChild = createBinaryTree(inputList);
    }
    return node;
}

刚看到的时候惊讶于原来用递归实现一颗二叉树这么简短,回想自己写过树的经历可能还停留在大三那会编译分析写词法分析的时候。不过仔细一想好像哪里不太对劲,这代码生成的树应该是一颗只有左孩子的树,所有的input都被建到左孩子下面去,右孩子的inputList只会是空的吧,可转念又一想,这内容不是号称有千万次的阅读量,而且还出版成书了,这种低级错误发生的可能性太小了,我再琢磨琢磨。但是怎么办呢,怎么看都不对啊,左子树和右子树分配的inputList肯定得是不同的才行,要我改的话我可能会简单的比如把inputList的平均分成两份,这样也基本能保证二叉树的平衡。总之当时很难受了,过不去了,作为处女座的我纠结的饭都吃不下,总觉得我是不是哪里想错了,差点就准备在本地写出来跑一跑看结果了,但是我忍住了,哈哈。一番心理斗争后我觉得我想得没问题,决定先跳过,明天去公司找同事印证一下我的想法。继续往后看,看到作者调用该方法时输入的参数我极度舒适了,原来我想得没错,人家代码写得也没错:

LinkedList<Integer> inputList = new LinkedList<Integer>(Arrays.asList(new Integer[]{3,2,9,null,null,10,null,null,8,null,4}))

原来在这里等着我呢,我认为input是连续的非null对象,除非所有数据遍历结束才会产生null的情况,但是作者确把null也作为input的一部分,对我来说不失为一个巧妙的实现,不禁感叹一下自己见识短浅了。 思考过程也跳不开固有的思维,如果这里我能想到是不是参数设计上并不如我想的这样我就可以继续往后看而不是纠结的过不去。所以以后看书看到觉得有问题的地方先跳出去,把上下文都看一看,反转可能就在其中。

最后把我一最好哥们曾经送给我的一句话分享给大家共勉:

我以为那是才华,结果只是阅读量太少

相关文章

  • 我以为那是才华

    最近从同事那拿了一本叫《漫画算法》的书,里面图文并茂,非常适合算法入门或者回顾,分享一个我在看书过程中的一个小故事...

  • 我以为那是月亮

    那还是4月的一个晚上,我一个人又一次睡不着,思来想后,睡不着的原因也就是自己工作上那点破事。 一个月前,牛逼得不可...

  • 我以为那是光明

    嗜睡缠绕着疲惫的身体 我在梦里到处行走 灵魂在一圣洁之地安睡 梦中一处充满了灰败 另一处充满了欢声笑语 我攀附着灰...

  • 我以为那是帮助。?

    不知道大家看到这个标题是不是都会说帮助很简单啊,就是在你有困难的时候帮你的人,我想说是对的。但是几个人辨别的出来真...

  • 我以为那是梦想

    我以为那是梦想,但是现实给我的却是幻想,唯有将它踩在脚下,你才能看的更好更远。——白云 曾经以为大学是梦想和远方,...

  • 我以为那是你

    我闭上眼睛 却看到了你 我堵上耳朵 却听到了你 我握着笔 却写出了你的名字 我在路上 却走向了你 我以为那是你 猛...

  • 我以为那是我的。。。

    最近在找工作,也有了机会可以睡懒觉。 早上起来,发现平时带饭的饭盒袋不翼而飞,剩下饭盒和餐具孤零零的留在原处,纳闷...

  • 我以为那是想象,也许…那是记忆?

    我相信,我就是相信,我是暮飞。不是这个时空的人,不是这个平凡的让人记不住的自己。我一定要相信,我自己是不同的...

  • 我曾以为那是爱情

    拿出酒柜里的红酒,却没有勇气再随便打开,害怕寂静的夜不能容忍独自饮酒的我。 手机的信息提示依旧在闪烁着,我多想拿起...

  • 我以为那是,其实不是

    摘要:『我以为那是正确的开瓶方法,其实不是。结果我磕掉了一块牙齿。』 ----------------------...

网友评论

      本文标题:我以为那是才华

      本文链接:https://www.haomeiwen.com/subject/ggzcdctx.html