C#实现同一数组内的元素排列组合
前言
我在之前的博客中记录过不同的数组内的元素进行排列组合的方法,在今天的项目中实现了一个将同一数组内的元素进行排列组合的方法,方法简单粗暴,在这里仅供参考。
实现
1.实现方法十分简单,用了几个嵌套的for循环就实现了,代码如下所示:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace NumberTest
{
class Program
{
static void Main(string[] args)
{
string[] values = { "0","3","6","8","10"};
for (int i = 0; i < values.Length;i++ )
{
for (int j = 0; j < values.Length; j++)
{
for (int p = 0; p < values.Length; p++)
{
for (int q= 0; q < values.Length; q++)
{
for (int k= 0; k < values.Length; k++)
{
if((values[i] != values[j]) && (values[i] != values[p]) && (values[i] != values[q]) &&
(values[i] != values[k]) && (values[j] != values[p]) && (values[j] != values[q]) &&
(values[j] != values[k]) && (values[p] != values[q]) && (values[p] != values[k]) &&
(values[q] != values[k]))
{
Console.WriteLine(values[i] + values[j] + values[p] + values[q] + values[k]);
}
}
}
}
}
}
Console.ReadKey();
}
}
}
2.打印出来,发现已经实现了同一数组内元素排列组合的功能,如图所示: