ArrayListCharacter
漣水網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)公司!從網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、APP開發(fā)、響應式網(wǎng)站建設等網(wǎng)站項目制作,到程序開發(fā),運營維護。創(chuàng)新互聯(lián)公司于2013年成立到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設就選創(chuàng)新互聯(lián)公司。
newblist=new
ArrayListCharacter(blist);
是用blist的值創(chuàng)建一個新的ArrayList
如果
newblist
=
blist;這樣,那兩個ArrayList使用的是同一個引用,操作一個會影響另一個。
------------------------------------------------------------------------------------------------------------------------
這個代碼的遞歸思想是這樣的。
alist是數(shù)據(jù),blist是結果
循環(huán)alist,創(chuàng)建出一個newalist備份,將alist中的一個元素添加到newblist.add(alist.get(i));中,
并在newalist中刪除。
將這兩個新的對象遞歸下去。
[1,2,3]
[]
[2,3]
[1]
[3]
[1,2]
--------------------
遞歸使用的是新創(chuàng)建的list
所以方法結束后,對alist,blist沒有影響
[2,3]
[1]
[2]
[1,3]
char[] a={'1','2','3','4'};
String b= "";
String c= "";
for (int i = 0; i a.length-1; i++) {
b="["+a[i]+","+a[i+1]+"]";
c+=b;
}
System.out.println(c);
import?java.util.Arrays;
import?java.util.LinkedList;
public?class?RecursionNArray
{
private?static?LinkedListchar[]?recursionSub?(?LinkedListchar[]?list,?int?count,?char[][]?array,?int?ind,
int?start,?int...?indexs?)
{
start++;
if?(start??count?-?1)
{
return?null;
}
if?(start?==?0)
{
indexs?=?new?int[array.length];
}
for?(?indexs?=?0;?indexs??array.length;?indexs++?)
{
recursionSub?(list,?count,?array,?0,?start,?indexs);
if?(start?==?count?-?1)
{
char[]?temp?=?new?char[count];
for?(?int?i?=?count?-?1;?i?=?0;?i--?)
{
temp[start?-?i]?=?array[start?-?i][indexs[start?-?i]];
}
list.add?(temp);
}
}
return?list;
}
public?static?void?main?(?String[]?args?)
{
char[]?a?=?{?'中','國','有','個','人'?};
char[]?b?=?{?'中','國','有','個','人'?};
char[]?c?=?{?'中','國','有','個','人'?};
char[]?d?=?{?'中','國','有','個','人'?};
char[][]?temp?=?{?a,?b,?c,?d?};
LinkedListchar[]?list?=?new?LinkedListchar[]?();
recursionSub?(list,?temp.length,?temp,?0,?-1);
for?(?int?i?=?0;?i??list.size?();?i++?)
{
System.out.println?(Arrays.toString?(list.get?(i)).replaceAll?("[\\[\\]\\,\\s]",?""));
}
}
}
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Test {
private String[] arr1;
private String[] arr2;
public Test(){
//數(shù)組長度可以隨意改,但必須保證兩個數(shù)組長度一樣
arr1 = new String[3];
arr2 = new String[3];
initArray();
}
private void initArray(){
Scanner scanner = new Scanner(System.in);
for(int i=0;iarr1.length;i++){
arr1[i] = scanner.next();
}
for(int i=0;iarr2.length;i++){
arr2[i] = scanner.next();
}
}
/**
* 獲取組合后的數(shù)組表單
* @return
*/
private ListString[] getcombineList(){
ListString[] list = new ArrayListString[]();
combineArray(list, arr1, arr2);
combineArray(list, arr2, arr1);
return list;
}
/**
* 遍歷數(shù)組str1,并將其復制到新的數(shù)組,再將str2中索引值與str1中索引值
* 相同的元素放入新的數(shù)組,然后將新的數(shù)組放入list中
* @param list
* @param str1
* @param str2
*/
private void combineArray(ListString[] list,String[] str1, String[] str2){
for(int i=0; istr1.length; i++){
String[] str = new String[str1.length];
for(int j=0; jstr2.length; j++){
str[j] = str2[j];
if(i == j)
str[j] = str1[j];
}
System.out.println(getArrayMessage(str));
list.add(str);
}
}
/**
* 將數(shù)組每一個元素組合成字符串
* @param str 字符串數(shù)組
* @return 組合字符串
*/
private String getArrayMessage(String[] str){
StringBuffer buffer = new StringBuffer();
for(int i=0; istr.length; i++){
if(i == str.length-1)
buffer.append(str[i]);
else
buffer.append(str[i]).append(",");
}
return buffer.toString();
}
public static void main(String[] argv){
Test test = new Test();
test.getcombineList();
}
}
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// 創(chuàng)建Scanner對象,用于獲取用戶輸入
Scanner scanner = new Scanner(System.in);
System.out.print("請輸入任意字符序列:");
// 獲取用戶輸入的字符序列
String str = scanner.nextLine();
// 循環(huán)遍歷字符序列中的每個字符
for (int i = 0; i str.length(); i++) {
// 獲取字符序列中的第i個字符
char c1 = str.charAt(i);
// 循環(huán)遍歷字符序列中的每個字符
for (int j = 0; j str.length(); j++) {
// 獲取字符序列中的第j個字符
char c2 = str.charAt(j);
// 如果第i個字符不等于第j個字符,則輸出它們的排列
if (i != j) {
System.out.println(c1 + "" + c2);
}
}
}
}
}
新聞名稱:java排列與組合代碼 java計算排列組合數(shù)的值
本文URL:http://jinyejixie.com/article0/dosspoo.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、響應式網(wǎng)站、品牌網(wǎng)站建設、標簽優(yōu)化、服務器托管、網(wǎng)站收錄
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)