一组数字:123,132,213,231,312,321,133.我想查找1*3(即百位带1,个位带

发布时间:2021-02-21 07:41:31

一组数字:123,132,213,231,312,321,133.我想查找1*3(即百位带1,个位带3的一组数,上列数字符合条件的是: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 \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 \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 \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好判断那些元素添加了,因为你是不重复的排列.======以下答案可供参考======供参考答案1:113、123、133、143、153、163、173、
以上问题属网友观点,不代表本站立场,仅供参考!