Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
果壳~
Java_279511
提交
a0149f78
J
Java_279511
项目概览
果壳~
/
Java_279511
与 Fork 源项目一致
Fork自
inscode / Java
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
J
Java_279511
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
a0149f78
编写于
5月 06, 2023
作者:
6
62c238f3d46af43947978a06
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Sat May 6 01:33:00 UTC 2023 inscode
上级
5b0ce43e
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
47 addition
and
2 deletion
+47
-2
Main.java
Main.java
+8
-2
Permutations.java
Permutations.java
+39
-0
未找到文件。
Main.java
浏览文件 @
a0149f78
class
Main
{
import
java.util.ArrayList
;
import
java.util.Arrays
;
public
class
Main
{
public
static
void
main
(
String
[]
args
)
{
System
.
out
.
println
(
"Hello world!"
);
int
[]
arr
=
{
1
,
2
,
3
};
ArrayList
<
ArrayList
<
Integer
>>
result
=
Permutations
.
permute
(
arr
);
System
.
out
.
println
(
result
);
}
}
\ No newline at end of file
Permutations.java
0 → 100644
浏览文件 @
a0149f78
import
java.util.ArrayList
;
import
java.util.Arrays
;
public
class
Permutations
{
public
static
void
main
(
String
[]
args
)
{
int
[]
arr
=
{
1
,
2
,
3
};
ArrayList
<
ArrayList
<
Integer
>>
result
=
permute
(
arr
);
System
.
out
.
println
(
result
);
}
public
static
ArrayList
<
ArrayList
<
Integer
>>
permute
(
int
[]
nums
)
{
ArrayList
<
ArrayList
<
Integer
>>
result
=
new
ArrayList
<>();
if
(
nums
==
null
||
nums
.
length
==
0
)
{
return
result
;
}
ArrayList
<
Integer
>
list
=
new
ArrayList
<
Integer
>();
Arrays
.
sort
(
nums
);
boolean
[]
used
=
new
boolean
[
nums
.
length
];
helper
(
result
,
list
,
nums
,
used
);
return
result
;
}
public
static
void
helper
(
ArrayList
<
ArrayList
<
Integer
>>
result
,
ArrayList
<
Integer
>
list
,
int
[]
nums
,
boolean
[]
used
)
{
if
(
list
.
size
()
==
nums
.
length
)
{
result
.
add
(
new
ArrayList
<
Integer
>(
list
));
return
;
}
for
(
int
i
=
0
;
i
<
nums
.
length
;
i
++)
{
if
(
used
[
i
]
||
(
i
>
0
&&
nums
[
i
]
==
nums
[
i
-
1
]
&&
!
used
[
i
-
1
]))
{
continue
;
}
used
[
i
]
=
true
;
list
.
add
(
nums
[
i
]);
helper
(
result
,
list
,
nums
,
used
);
used
[
i
]
=
false
;
list
.
remove
(
list
.
size
()
-
1
);
}
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录