c# - 如何在不将元素彼此相邻的情况下存储数组的子数组?
问题描述
static void Main(string[] args)
{
Console.WriteLine("Enter your number of array inputs");
int numberofarray = Convert.ToInt32(Console.ReadLine());
int[] array = new int[numberofarray];
Console.WriteLine("Enter the values of the array");
for(int i=0; i<numberofarray;i++)
{
Console.WriteLine("Enter {0} . number", i + 1);
array[i] = Convert.ToInt32(Console.ReadLine());
}
createsubarray(array);
}
static void createsubarray(int[] array)
{
int[,] subarray = new int[Convert.ToInt32(Math.Pow(2, array.Length)-1), array.Length];
int counter = 0;
for (int i = 0; i < array.Length; i++)
{
for (int j = i; j<=array.Length; j++)
{
for(int k = i; k<j; k++)
{
subarray[counter, k] = array[k];
}
counter++;
}
}
for (int m = 0; m < subarray.GetLength(0); m++)
{
for (int l = 0; l < subarray.GetLength(1); l++)
{
Console.WriteLine(subarray[m, l]);
}
Console.WriteLine();
}
}
我能够存储子数组,但我不知道如何不存储空子数组,并且如果存储了一个元素,则不会存储下一个元素。例如;
数组 = {1,2,3,4,5}
子数组应该是这样的 = {1,3,5},{1,3},{1,5},{2,4},{3,5}
解决方案
推荐阅读
- ruby - 如何使用 Ruby 连接到 Firestore 数据库
- charts - chart.js 全天时间图
- typescript - 没有 babelrc 的带有 TypeScript 和 TSX 的包裹?
- c++ - 从失败的读取中恢复 ifstream
- python - 如何计算 pygame.Surface 的屏幕中间?
- elasticsearch - 在 Logstash 中上传消息时标记
- javascript - 如何将带有连接的字符串转换为javascript中的真实字符串?
- javascript - 为什么在函数结束执行之前发送我的承诺的“解决”?
- javascript - 当键是唯一的但不是连续的时,如何使对象子属性成为其在新对象中的键?
- r - R:按索引分配列表列表