环形链表的约瑟夫问题

环形链表的约瑟夫问题

http://www.nowcoder.com/questionTerminal/41c399fdb6004b31a6cbb047c641ed8a

不会真的有人用链表做吧,不会吧不会吧。
环形取余数组,逐一删除。
用例通过率: 100.00% 运行时间: 44ms 占用内存: 6528KB。

#
#
# @param n int整型
# @param m int整型
# @return int整型
#
class Solution:
    def ysf(self, n, m):
        # write code here
        res = []
        for i in range(0, n):
            res.append(i+1)
        i = 0
        for j in range(0, n-1):
            i = (i+m-1) % (n-j)
            del res[i]
        return res[0]
全部评论
C++嗤之以鼻,我链表删除元素不比你数组快?
1 回复 分享
发布于 2021-04-14 11:19
数组的del可不是O(1)的时间复杂度
点赞 回复 分享
发布于 2021-07-20 17:10
你就这么爱秀吗
点赞 回复 分享
发布于 2021-04-26 21:16
太尬了
点赞 回复 分享
发布于 2021-04-18 15:56
列表要求内存地址连续,删除元素后底层会遍历后面的元素前移
点赞 回复 分享
发布于 2021-04-02 15:12
我直接好家伙,你这么写和链表区别在哪,不就是少写了点代码么
点赞 回复 分享
发布于 2021-03-30 16:07
有点尬 兄弟
点赞 回复 分享
发布于 2021-03-28 19:24
我用 JS 写,数组的话直接超时了
点赞 回复 分享
发布于 2020-11-18 15:52
你用python写的,自然看不出来内部的数据结构。如果用C/C++写,删除元素当然是用链表操作最快了
点赞 回复 分享
发布于 2020-11-05 17:36

相关推荐

喜欢疯狂星期四的猫头鹰在研究求职打法:短作业优先
点赞 评论 收藏
分享
炬火初现:为什么会没有面试啊,我有些学长双非cpp都只有小厂实习,最后都还是能面不少的啊,也有进腾讯云智啥的。我个人感觉可能简历太杂了,可以压缩精炼一下。
点赞 评论 收藏
分享
评论
3
1
分享

创作者周榜

更多
牛客网
牛客企业服务