c*p
2 楼
leetcode permutation sequence
先谢谢各位大牛!
我知道这个问题有更好的解法,但我想知道:
我想把第k个permutation存在result中, 无论我result是否设为全局的,它都存不下。
当时读到的时候,有存进去,可是接着run之后就没有了。我要怎么保存它呢?
int count;
StringBuffer result = new StringBuffer();
public String getPermutation(int n, int k) {
// Start typing your Java solution below
// DO NOT write main() function
count = 0;
if(n == 0 || k == 0){
return "";
}
StringBuffer sol = new StringBuffer();
permute(n, k, 1, sol, result);
// System.out.println("pass is:" + result);
String ret = new String(result);
return ret;
}
public void permute(int n, int k, int level, StringBuffer sol,
StringBuffer result){
if(level == n + 1){
count++;
System.out.println(sol);
if(count == k){
result = new StringBuffer(sol);
}
System.out.println("safe result as: " + result);
}
for(int i = level; i <= n; i++){
sol.append(i);
permute(n, k, level + 1, sol, result);
sol.setLength(sol.length() - 1);
}
}
先谢谢各位大牛!
我知道这个问题有更好的解法,但我想知道:
我想把第k个permutation存在result中, 无论我result是否设为全局的,它都存不下。
当时读到的时候,有存进去,可是接着run之后就没有了。我要怎么保存它呢?
int count;
StringBuffer result = new StringBuffer();
public String getPermutation(int n, int k) {
// Start typing your Java solution below
// DO NOT write main() function
count = 0;
if(n == 0 || k == 0){
return "";
}
StringBuffer sol = new StringBuffer();
permute(n, k, 1, sol, result);
// System.out.println("pass is:" + result);
String ret = new String(result);
return ret;
}
public void permute(int n, int k, int level, StringBuffer sol,
StringBuffer result){
if(level == n + 1){
count++;
System.out.println(sol);
if(count == k){
result = new StringBuffer(sol);
}
System.out.println("safe result as: " + result);
}
for(int i = level; i <= n; i++){
sol.append(i);
permute(n, k, level + 1, sol, result);
sol.setLength(sol.length() - 1);
}
}
o*n
3 楼
no
b*i
4 楼
result=new StringBuffer...
使用new之后,这个result就不是原来外面调用者的了。
【在 c********p 的大作中提到】
: leetcode permutation sequence
: 先谢谢各位大牛!
: 我知道这个问题有更好的解法,但我想知道:
: 我想把第k个permutation存在result中, 无论我result是否设为全局的,它都存不下。
: 当时读到的时候,有存进去,可是接着run之后就没有了。我要怎么保存它呢?
: int count;
: StringBuffer result = new StringBuffer();
: public String getPermutation(int n, int k) {
: // Start typing your Java solution below
: // DO NOT write main() function
使用new之后,这个result就不是原来外面调用者的了。
【在 c********p 的大作中提到】
: leetcode permutation sequence
: 先谢谢各位大牛!
: 我知道这个问题有更好的解法,但我想知道:
: 我想把第k个permutation存在result中, 无论我result是否设为全局的,它都存不下。
: 当时读到的时候,有存进去,可是接着run之后就没有了。我要怎么保存它呢?
: int count;
: StringBuffer result = new StringBuffer();
: public String getPermutation(int n, int k) {
: // Start typing your Java solution below
: // DO NOT write main() function
L*A
5 楼
都不用育种。好不好种就不好说了!反正我的波菜很不成功,越种越少。好象这种无异
味的菜特爱招虫子。
味的菜特爱招虫子。
L*1
6 楼
我的菠菜全军覆没
a*a
12 楼
都不需要,直接撒地里,尽量保持土壤湿润,出芽比较快。
相关阅读
全球码农向CCTV春晚宣战?发现firefox还是英文版合适啊Team Lead Java Web Infrastructure Engineer ($130k-$200k)刚刚写完转行学计算机的经历java.security.KeyStore请问JDBC连SQL server的connect reset问题如何解决? (转载)新手请教:Java or .NET, DBA?有人愿意一块开发android的程序吗? (转载)JPA Criteria API select questionjavaFX谁有经验?Position: Fixed Income Java Developer拜托大家不要用J2EE这个词了请教个garbage collector问题请大牛们推荐java junior position面试的书VisualVM profiler,有朋友用过么Amex SPG卡免费送25K points 可换500刀现金什么应用需要几百个节点的java呢如何在Java上跑Windows PowerShell cmdlet?有没有人想做点小project的 (转载)how to weave an existing jar ?