V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
banxi1988
V2EX  ›  程序员

决定学习怎么写翻转二叉树了.

  •  
  •   banxi1988 ·
    banxi1988 · 2015-06-11 09:56:53 +08:00 · 6556 次点击
    这是一个创建于 3444 天前的主题,其中的信息可能已经有所发展或是发生改变。
    https://twitter.com/mxcl/status/608682016205344768

    from @mxcl
    > Google: 90% of our engineers use the software you wrote (Homebrew), but you can’t invert a binary tree on a whiteboard so fuck off.
    21 条回复    2015-06-11 15:56:48 +08:00
    ycge234
        1
    ycge234  
       2015-06-11 10:09:33 +08:00
    然并卵,并不能进Google···
    knightdf
        2
    knightdf  
       2015-06-11 10:37:48 +08:00
    然并卵
    JackBlack2006
        3
    JackBlack2006  
       2015-06-11 10:43:23 +08:00
    你就算学会写,不出镇子也没用,我大学刚毕业那会儿给谷歌发简历,人家要面试,结果我说自己在镇子,人家就没回复了,连 Skype 远程面试机会都没有
    linzhi
        4
    linzhi  
       2015-06-11 11:36:53 +08:00
    然并卵
    gaoxt1983
        5
    gaoxt1983  
       2015-06-11 11:49:17 +08:00
    我还以为翻转二叉树是啥呢,原来就是左右换一下,写个递归不就行了……
    pyKun
        6
    pyKun  
       2015-06-11 12:09:10 +08:00
    @JackBlack2006 啥是镇子?
    yanyandenuonuo
        7
    yanyandenuonuo  
       2015-06-11 12:14:45 +08:00
    @JackBlack2006 高端黑么。。。
    bellchu
        8
    bellchu  
       2015-06-11 12:19:07 +08:00 via iPhone
    @gaoxt1983 不可以用递归
    jadecoder
        9
    jadecoder  
       2015-06-11 12:24:52 +08:00
    @pyKun 景德镇
    sheep42
        10
    sheep42  
       2015-06-11 12:26:26 +08:00
    @JackBlack2006 每隔一段时间会有那边的工程师来面试的啊
    Andiry
        11
    Andiry  
       2015-06-11 12:26:52 +08:00
    我会写递归及非递归的二叉树翻转,然并卵
    Andiry
        12
    Andiry  
       2015-06-11 12:30:15 +08:00
    不过说句实话,遍历也就罢了,翻转二叉树这种东西有什么实际用途吗?考这到底有什么用,实在想不出来
    wdlth
        13
    wdlth  
       2015-06-11 13:22:52 +08:00
    下次Google又会出,你可以做出一个翻转的Google页面么……
    ffffwh
        14
    ffffwh  
       2015-06-11 13:23:41 +08:00
    Google Sucks -- YinWang
    jjx
        15
    jjx  
       2015-06-11 13:25:29 +08:00
    什么是二叉树?:)
    lxrmido
        16
    lxrmido  
       2015-06-11 13:33:04 +08:00
    @wdlth
    transform:rotateX(180deg);
    suliuyes
        17
    suliuyes  
       2015-06-11 13:50:52 +08:00
    on a whiteboard
    是要手写吧,大牛手写算法也不一定牛。平时用的少,还得先准备
    KingHL
        18
    KingHL  
       2015-06-11 13:51:44 +08:00
    刷题很好,然而并没有事很么卵用
    TimLang
        19
    TimLang  
       2015-06-11 14:50:16 +08:00
    以前数据结构考试比较难的就是二叉树的前序、中序、后序,而且全是在纸上自己算出来写卷子上的。话说工作到现在碰到过这个应用场景。
    Magic347
        20
    Magic347  
       2015-06-11 15:35:36 +08:00
    非递归不难实现,用一个栈就可解。
    初始化时,将根节点入栈。
    每次弹出栈顶元素(如果有),swap该元素的左右孩子节点(如果有孩子节点,注意左右孩子节点是否均存在),
    然后依次把swap之后的左右孩子节点(如果存在)重新压回栈内。
    重复上述操作,直到栈空,done。
    递归实现的话,就更符合人类思维的自然逻辑了,此处skip。
    wdlth
        21
    wdlth  
       2015-06-11 15:56:48 +08:00
    @lxrmido 不能使用CSS3,还得兼容各种浏览器,比如毒瘤IE6。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5854 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 02:56 · PVG 10:56 · LAX 18:56 · JFK 21:56
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.