字串或陣列全排列的三種方法

2022-10-11 07:00:10 字數 936 閱讀 7123

先看最簡單的一種:

void perm2(int *arr, int n, int

len)

; int

len = sizeof(arr) / sizeof(arr[0]);

perm2(arr,0,len);

system("pause");

}

另一種:遞迴,用乙個陣列標記數字是否被用過

#include

using

namespace

std;

#define n 3

int used[n] = ;//標記

int num[n];//結果

int mat[n] = ;//原來的資料

void shown(int ceng)

printf("\n");//顯示資料

}else}}

}int main()

1.先將當前字串列印出來

2.將倒數第二個字元後移

3.將字串列印出來

4.倒數第三個字元呼叫上過程

5.第乙個字元呼叫以上過程

#include

using

namespace

std;

void perm1(int *arr, int n,int len)

cout

<< endl;

}else

}}int main()

; int len = sizeof(arr) / sizeof(arr[0]);

perm2(arr,0,len);

cout

<< coun << endl;

system("pause");

}

搜尋字串的三種方法

cpp file fp tfopen szxmlfilepath,l rb if fp null return fseek fp,0,seek end uint nlen ftell fp fseek fp,0,seek set 寬字元型別 wchar t pstr read new wchar t...

左旋字串的三種方法

注 有效次數為 總次數 n 如上圖所示,假設對字串左旋6次和左旋2次,得到的結果是一樣的 思路 include include include include pragma warning disable 4996 遮蔽scanf出現的錯誤 char a abcd1234 變數定義成全域性較好 in...

NSString字串擷取三種方法

1.定義乙個字串a,擷取a 的某乙個專案組,複製給b,b必須是int型 nsstring a 1.2.30 int b a substringwithrange nsmakerange 4,2 intvalue nslog a n a nslog b d b 解析如下 substringwithra...