新手求解答~ 0000-9999分成四个部分 四个数相同为一部分 三个数相同为一部分 二个数相同为一部分 没有相同的为一部分例如:6666;6667;6678;6789 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 额 就像手机号码的后四位 1504505xxxx 这个xxxx就是问题 从0000-9999么 分成那四个部分 不明白lz的意思,是说从0000-9999的四位数,把它们分组,四个数字相同的分一组,三个数字相同的分一组,两个数字相同的分一组,都不同的分一组,是这样吗?int[] num = new int[]{0,0,0,0};List<List<String>> list = new ArrayList<List<String>>();for (int i=0; i<num.length; i++) { list.add(new ArrayList<String>());}int[] dig = new int[10];int max=0, idx=0;while (num[0] < 10) { Arrays.fill(dig, 0); max = 0; idx = 0; for (int i=0; i<num.length; i++) { for (int j=0; j<dig.length; j++) { if (j == num[i]) { dig[j]++; if (max < dig[j]) { max = dig[j]; idx = j; } break; } } } list.get(max-1).add(Arrays.toString(num).replaceAll("\\D+", "")); num[num.length-1]++; for (int i=num.length-1; i>0; i--) { if (num[i] == 10) { num[i] = 0; num[i-1]++; } }}for (int i=0; i<list.size(); i++) { System.out.println(list.get(i));}其实for(int num=0; num<10000; num++)循环,把num一次取模分解出4位数字再判断也可以,为了避免不足4位的数字的判断,所以上面方法直接把num作为一个数组处理 jxl处理excel的问题 谁有关于过滤垃圾邮件的系统,帮帮忙! 关于声音文件路径的问题! 一个关于鼠标的事件 一个关于string[]的问题 请问这样为什么中文不对?请帮忙修改源程序。 小问题 高分求助 /** 急...哪儿有MS Access的ODBC驱动下载? */ 求救,数据集不能支持向前移动。 请问:JTextArea 怎么同时选中两处文本?? 请大家帮忙看看!用swing的做机车周转图可行吗?大家帮忙说说
List<List<String>> list = new ArrayList<List<String>>();
for (int i=0; i<num.length; i++) {
list.add(new ArrayList<String>());
}
int[] dig = new int[10];
int max=0, idx=0;
while (num[0] < 10) {
Arrays.fill(dig, 0);
max = 0;
idx = 0;
for (int i=0; i<num.length; i++) {
for (int j=0; j<dig.length; j++) {
if (j == num[i]) {
dig[j]++;
if (max < dig[j]) {
max = dig[j];
idx = j;
}
break;
}
}
}
list.get(max-1).add(Arrays.toString(num).replaceAll("\\D+", ""));
num[num.length-1]++;
for (int i=num.length-1; i>0; i--) {
if (num[i] == 10) {
num[i] = 0;
num[i-1]++;
}
}
}
for (int i=0; i<list.size(); i++) {
System.out.println(list.get(i));
}其实for(int num=0; num<10000; num++)循环,把num一次取模分解出4位数字再判断也可以,为了避免不足4位的数字的判断,所以上面方法直接把num作为一个数组处理