gpt4 book ai didi

algorithm - 如何找到给定字符串及其等级的排列?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:08:15 26 4
gpt4 key购买 nike

例如,

rank  permutation   
0 abc
1 acb
2 bac
3 bca
4 cab
5 cba

所以,如果有人问我排名 4 的排列,答案是 cab。请给出这个程序的java代码

最佳答案

我第一次尝试就成功了!! :-)真的很好的作业,很好的问题,你让我很开心!这是 javascript 中的解决方案:

function permutation (rank, n, chars) 
{
var fact, char_idx, this_char;

if (n == 0)
return "";

char_idx = Math.floor(rank / factorial(n - 1));

this_char = chars.splice(char_idx, 1);
// returns the char with index char_idx and removes it from array

return this_char +
permutation(rank % factorial(n - 1), n - 1, chars);
}

只需像 permutation(5, 3, ['a', 'b', 'c']) 那样调用即可。您必须编写自己的 factorial() 函数 - 作为作业 :-)

关于algorithm - 如何找到给定字符串及其等级的排列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6799696/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com