一组数字:123,132,213,231,312,321,133.我想查找1*3(即百位带1,个位带3的一组数,
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/11/20 05:55:52
一组数字:123,132,213,231,312,321,133.我想查找1*3(即百位带1,个位带3的一组数,
上列数字符合条件的是:123,133
上列数字符合条件的是:123,133
你应是在java中的数,所以这个,你看一下,LEN可以自己改.
-------------------------------------------------------------------------
public class demo {
public static void main(String[] args) {
\x05int len = 3;
\x05String[] array = { "1","2","3" };
\x05execute(array,len,"");
}
public static void execute(String[] array,int len,String str) {
\x05for (int i = 0; i < array.length; i++) {
\x05 str += array[i];
\x05 if (str.length() == len) {
\x05\x05System.out.println(str);
\x05 } else {
\x05\x05execute(array,len,str);
\x05 }
\x05 str = str.substring(0,str.length() - 1);
\x05}
}
}
你看一下这个.
----------------------------------------------------------------------------------------
import java.util.ArrayList;
import java.util.List;
public class demo {
public static void main(String[] args) {
\x05String[] array = { "1","2","3","4" };
\x05List list = new ArrayList();
\x05execute(array,list);
}
public static void execute(String[] array,List list) {
\x05for (int i = 0; i < array.length; i++) {
\x05 if (list.contains(array[i])) {
\x05\x05continue;
\x05 }
\x05 list.add(array[i]);
\x05 if (list.size() == array.length) {
\x05\x05String str = "";
\x05\x05for (int n = 0; n < list.size(); n++) {
\x05\x05 str += list.get(n);
\x05\x05}
\x05\x05System.out.println(str);
\x05 } else {
\x05\x05execute(array,list);
\x05 }
\x05 list.remove(list.size() - 1);
\x05}
}
}
大概思路是循环array
list记录放入了那些值,
如果放过了就忽略那个数,
没放过就在list中加入,进入递归过程.
当LIST的长度与array 相等,输出LIST中的.
add是添加元素
remove是移除
用List好判断那些元素添加了,
因为你是不重复的排列.
-------------------------------------------------------------------------
public class demo {
public static void main(String[] args) {
\x05int len = 3;
\x05String[] array = { "1","2","3" };
\x05execute(array,len,"");
}
public static void execute(String[] array,int len,String str) {
\x05for (int i = 0; i < array.length; i++) {
\x05 str += array[i];
\x05 if (str.length() == len) {
\x05\x05System.out.println(str);
\x05 } else {
\x05\x05execute(array,len,str);
\x05 }
\x05 str = str.substring(0,str.length() - 1);
\x05}
}
}
你看一下这个.
----------------------------------------------------------------------------------------
import java.util.ArrayList;
import java.util.List;
public class demo {
public static void main(String[] args) {
\x05String[] array = { "1","2","3","4" };
\x05List list = new ArrayList();
\x05execute(array,list);
}
public static void execute(String[] array,List list) {
\x05for (int i = 0; i < array.length; i++) {
\x05 if (list.contains(array[i])) {
\x05\x05continue;
\x05 }
\x05 list.add(array[i]);
\x05 if (list.size() == array.length) {
\x05\x05String str = "";
\x05\x05for (int n = 0; n < list.size(); n++) {
\x05\x05 str += list.get(n);
\x05\x05}
\x05\x05System.out.println(str);
\x05 } else {
\x05\x05execute(array,list);
\x05 }
\x05 list.remove(list.size() - 1);
\x05}
}
}
大概思路是循环array
list记录放入了那些值,
如果放过了就忽略那个数,
没放过就在list中加入,进入递归过程.
当LIST的长度与array 相等,输出LIST中的.
add是添加元素
remove是移除
用List好判断那些元素添加了,
因为你是不重复的排列.
一组数字:123,132,213,231,312,321,133.我想查找1*3(即百位带1,个位带3的一组数,
一个三位数,个位数字比十位数字大1,比百位数大3,把百位数字与个位数字交换位置后得到一个新数,新数与原数的和787,求原
一个三位数,十位上数组是个位上的数字的1/3,十位上的数字比百位数的数字小6,当百位数字与个位数字对调后,新的三位数比原
有一个三位数,它的个位数字比百位数大1,十位数字比个位数字的一半少1,如果把个位数字当成百位数字,
有一个三位数,个位数字为百位数字的2倍,十位数字比百位数字大1,若将此数个位与百位顺序对调(个位变百位)所得的新数比原数
任意写一个三位数,使百位数字比十位大3,交换百位和个位数字,用大数减小数,交换差的百位与个位数字,
一个三位数,十位数字为x,百位上的数字比十位数字的两倍小3,个位上的数字比百位数数字大1 则这三个数是 ?
一个三位数,各位数上的数字之和为10,百位数字,比十位数字大1,如果把这个百位数字与个位数字对调,那么得到新数比原来的3
一个三位数,它的个位数字是a,十位数字是个位数字的3倍少1,百位数字比个位数字大5
一个三位数,他的个位数字是a,是位数字是个位数字的3倍少1,百位数字比个位数字大5.
一个三位数,百位数为a,十位数字是百位数字的2倍,个位数字比百位数字少1,则这三个数是
一个三位数,它的个位数字是a,十位数字是个位的3倍少1,百位数字比个位数字大5