2017面试遇到的算法题

作者: liyc_dev | 来源:发表于2017-03-05 19:27 被阅读175次

    以下是这次面试遇到的算法题,有时间时再完善答案。

    1、链表反转
    2、验证链表是否是环状
    3、冒泡排序
    4、实现一个方法,入参是整数n,输出1到n。要求是不能重复并且是乱序。比如:输入3,输出1、3、2。
    5、实现一个方法,入参是一个字符串,返回值BOOL,判断是否是有效IP地址。
    6、实现一个方法,入参是一个字符串,找到最短子串,比如:abcdabca,找到最短的子串包含a和c。输出ca。
    7、找到两个view的最近的公共父view
    8、找到两个集合中的相同元素
    9、一个无规则递增的整数集合,随便抽走一个,如何找到哪个被抽走了。比如,13459,删掉了4。(至今没想明白)
    10、时间复杂度、空间复杂度,是否是稳定的。
    11、写一个九宫格键盘的匹配关系,比如,输入a输出2,输入z输出9。
    12、找到链表中后面数第k个节点
    13、2048这个游戏最大能玩到多少?

    相关文章

      网友评论

      • 用户5538412007:第九题最佳做法应该是把原来集合整数全部异或一遍的出结果a,然后删除一个后再把全部异或得出结果b,然后嘛a和b异或结果就是被删除的数字:stuck_out_tongue_winking_eye:
        用户5538412007:@liyc_dev 这个题类似那种,一个数组中所有的数都是成对出现的只有一个或者两个数字是单独的,求这个数,举一反三就出来了:smile:
        liyc_dev:不过这样也需要遍历两次集合,如果是这样就可以将两次的集合分别求和,用结果再求差就找到了。
        liyc_dev:@用户5538412007 怒赞,怎么想到的呢?
      • Mr_Leo:1 2 5 7应该是百度的吧,曾经都遇到过,9用二分查找不就行了吗
        liyc_dev:@Mr_Leo 9,你说应该不行,二分查找是在一个集合里查找一个元素啊,这题是不知道元素是啥,楼上的有点意思
        liyc_dev:@Mr_Leo 123459都是百度的,当然123其他公司也遇到了

      本文标题:2017面试遇到的算法题

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