首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用twist c#生成组合和变体

使用twist c#生成组合和变体
EN

Stack Overflow用户
提问于 2017-04-26 00:19:33
回答 1查看 167关注 0票数 1

这个问题是关于无重复变化的主题(是的,我做了研究,我只需要对我的任务中一个非常独特的问题有一些见解)。

基本上,我的任务是编写一个例程,找到一个5位字符串的所有可能的变体,然后将这些字符串添加到一个列表中。我的问题的棘手之处在于,字符串中的前3位是八进制数字0-7,字符串中的最后两位是字母数字表示0-7或A-Z* (不包括字母I和O)。

通过我的研究,我已经能够提出八进制集和字母数字集的单独组合。我还将组合显示给调试器,以确保它正常工作。

代码语言:javascript
复制
static void Main()
    {
        string[] octalset = { "0", "1","2","3","4","5","6","7" };

        List<string> tracknum15 = new List<string>();
        List<string> tracknum19 = new List<string>();

        var v = new Variations<string>(octalset,3,GenerateOption.WithRepetition);

        foreach (var vv in v)
        {

            System.Diagnostics.Debug.WriteLine(string.Join("", vv));
            tracknum15.Add(vv);
        }

        string[] alphanumericset = { "0", "1", "2", "3", "4", "5", "6", "7", "A", "B", "C", "D", "E", "F", "G", "H", "J", "K", "L", "M", "N", "P", "Q", "S", "T", "U", "V", "W", "X", "Y", "Z" };

        var a = new Variations<string>(alphanumericset, 2, GenerateOption.WithRepetition);

        foreach (var aa in a)
        {
            System.Diagnostics.Debug.WriteLine(string.Join("", aa));
        }
    }

我的主要问题是,我不知道如何生成一个组合列表,其中前三位是八进制的,后两位是字母数字的。第二个问题是,在生成组合后,我在将组合添加到列表时遇到了问题。

我将继续自己的工作,但我认为来自比我更有经验的人的洞察力将有助于解决我的问题。

如有任何帮助,我们不胜感激!

EN

回答 1

Stack Overflow用户

发布于 2017-04-26 00:29:12

如果我正确理解了您的问题,您希望创建每个可能的字符串,从3个oct开始,然后从0-7A-Z组中创建2个元素,不包括I和O。

这听起来像是你需要两个循环,一个创建从000到777的每个oct数字,第二个内部循环添加你的2元素部分。有关嵌套循环,请参阅此处,https://www.tutorialspoint.com/csharp/csharp_nested_loops.htm

string.Join("",vv)不是必需的,只需执行:(string) vv

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43616041

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档