2022-04-22 12:32
清华大学 Java 南大一只牛:回溯的典型题目,之所以没有回溯的步骤是因为在递归函数里用了String变量,该变量每次改变都会产生一个新的变量。如果使用list来保存的话,需要显式回溯步骤。
0 点赞 评论 收藏
分享
愤世猪:“qwertyuio”这个串超时了
0 点赞 评论 收藏
分享
2022-04-22 12:29
清华大学 Java morphy:这个地方很有意思 楼上几个评论认为题解错了,我认为题解没错,先说结论:二者皆可。可自行提交试试,都能通过。两种写法结果集是一样的,只是每一项添加到结果集的时机不同。 这里最后一个条件visit[i-1] 也可以写成!visit[i-1] 1. 写visit[i-1] 比如1 2 2这个数组,会导致在(第二层)第一次遍历到中间的2时,遍历到第二个2时,直接跳过了,不会加入到list,在(第三层)第一次遍历2时,此时中间的2已经标记为false,才会加入到list中,答案是对的 2. 写!visit[i-1] 与上面相反,这样的含义是:因为数组最开始已经被我们排序,所以相等的数字一定挨着,比如两个2,在处理第二层的时候,前面的2肯定先用,后面的2后用,注意这里“用过”的含义不是遍历过,在用后面2的时候,前面2已经置为false,因此这里用!visit[i-1]代表前面已经用过,而不是遍历过
0 点赞 评论 收藏
分享
2022-04-22 12:24
清华大学 Java 枉做好人:-231<=nums[i]<=231-1 num[i]元素大于num的长度咋办呢? 0<=len(nums)<=5*105
0 点赞 评论 收藏
分享
2022-04-22 12:20
清华大学 Java 牛客39927931...:我实在是无语了,最关键的文字部分tm写反了可还行, step 3:每次输入的数据流先进入大顶堆排序,然后将大顶堆的最大值弹入小顶堆中,完成整个的排序。
0 点赞 评论 收藏
分享
牛客87097557...:官方给的题解居然超时了,这咋搞
0 点赞 评论 收藏
分享
创作者周榜
更多
关注他的用户也关注了: