问题描述
我的情况是这样的:我想实现A、B、C、D、E、F......Z这样顺序的自动编号规则,例如:第一条记录代号:A、第二条记录代号:B第三条记录代号:C以此类推,当编到了Z后,再从AA、AB、AC.....AZ;BA、BB、BC....BZ;CA、CB....CZ以此类推。我觉得是一个有限数据集合排列组合的问题,但我没有接触过此方面的知识。应该是一个string[26][26]这样的一个类。请各位高手指点。
解决方案
解决方案二:
usingSystem;classTest{staticstringalpha="ABCDEFGHIJKLMNOPQRSTUVWXYZ";staticstringGetString(inti){if(i<0||i>=26+26*26)return"?";if(i<26)returnalpha[i].ToString();returnalpha[i/26-1].ToString()+alpha[i%26].ToString();;}staticvoidMain(){for(inti=-2;i<26+26*26+2;i++){Console.WriteLine(GetString(i));}}}
解决方案三:
典型的10进制转26进制的东东代码不写,你只要知道任意进制间的转换规则,你自己估计5分钟左右都能编出来
解决方案四:
谢谢楼上的两位,调试后揭帖
解决方案五:
fromtowuyi8808:你的代码可以实现这个功能,但是我现在需要在ASP.NET中使用,如何每次得到一个值,而不是全部:比如:我要去A,和A后面这样个数,该怎么实现,我的数组基础知识不好。请指点
时间: 2024-09-13 23:49:56