Redian新闻
>
F家常考的3sum的变形题到底是啥意思啊?
avatar
F家常考的3sum的变形题到底是啥意思啊?# JobHunting - 待字闺中
y*e
1
就看了两个面经,竟然都有这题,可以原题作者都说的一笔带过,
一个说的是
“three sum的变种, 允许3个数字重复,就是起始位置一样就行”
另一个说的是
“3sum, 可以重用数字”
是说比如-2,4,6,1,2,0取三数和为0的话,那么
-2,-2,4
-2,2,0
-2,1,1
0,0,0
都是合理解吗?
avatar
d*6
2
应该不是这个意思,是原来的array里有重复的话结果允许重复
比如 -2,4,6,1,2,0,0
-2,2,0
-2,2,0
两个解,第一个和第二0不一样
这是我比较leetcode上原题后的理解,不一定对
但此题应该不难,只要读懂题目,怎么变都能搞定
avatar
y*e
3
那这句话“就是起始位置一样就行”应该是起始位置不一样就行?少打了不字?

【在 d**********6 的大作中提到】
: 应该不是这个意思,是原来的array里有重复的话结果允许重复
: 比如 -2,4,6,1,2,0,0
: -2,2,0
: -2,2,0
: 两个解,第一个和第二0不一样
: 这是我比较leetcode上原题后的理解,不一定对
: 但此题应该不难,只要读懂题目,怎么变都能搞定

avatar
h*k
4
0,0,0应该也是合理解
感觉就是dfs 递归的时候下一个index取一样的
avatar
y*e
5
用recursion的话会不会complexity太大? 我觉得sort + two pointer的基础上改应该
就可以,就是不知道题目的意思到底是啥?

【在 h***k 的大作中提到】
: 0,0,0应该也是合理解
: 感觉就是dfs 递归的时候下一个index取一样的

avatar
f*a
6
i think ur original interpretation is correct?
my stab at it:
sort ...
for (int i = 0; i < n; i++) {
int j = i;
int k = n-1;
while (j <= k) {
j++ or k-- depends on the diff
}
}

【在 y*****e 的大作中提到】
: 用recursion的话会不会complexity太大? 我觉得sort + two pointer的基础上改应该
: 就可以,就是不知道题目的意思到底是啥?

avatar
y*e
7
我的思路也是这样 :)谢谢分享!

/* */) 的大作中提到: 】

【在 f********a 的大作中提到】
: i think ur original interpretation is correct?
: my stab at it:
: sort ...
: for (int i = 0; i < n; i++) {
: int j = i;
: int k = n-1;
: while (j <= k) {
: j++ or k-- depends on the diff
: }
: }

avatar
f*a
8
不过, 你知不知道如果用back tracking那种方法做, 复杂度是O 什么?

【在 y*****e 的大作中提到】
: 我的思路也是这样 :)谢谢分享!
:
: /* */) 的大作中提到: 】

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。