在Java中查找一个给定数组的所有子数组
数组是一种线性数据结构,其中的元素被存储在连续的内存位置。
根据问题陈述,我们必须找到一个给定数组的所有子数组。子数组是一个数组的一部分或一个部分。当我们谈论一个数组的所有子数时,我们谈论的是可以使用该数组的所有元素而不重复的组合总数。
让我们探讨一下这篇文章,看看如何通过使用Java编程语言来实现。
向你展示一些实例
实例一
假设我们有以下数组
这个数组的子数组将是
实例2
假设我们有以下数组
这个数组的子数组将是
算法
算法-1
- 第1步 – 存储完数组后,运行一个从0到n的for循环,这将标志着我们的主数组的起点。
-
第2步– 运行另一个for循环,从第一个迭代器运行到主数组的结束点。
-
第3步 – 现在运行另一个循环,遍历两个迭代器之间的元素。
-
第4步 – 按顺序打印这些元素。
算法-2
-
第1步 – 在存储数组后,检查我们是否已经到达终点,然后走出函数。
-
第2步 – 如果开始索引大于结束索引,那么从0到end+1调用函数本身。
-
第3 步 – 否则在for循环内打印索引之间的数组元素,并从start+1到end再次调用该函数。
-
第4步 – 退出。
语法
要获得一个数组的长度(该数组中的元素数),数组有一个内置的属性,即 长度
下面是它的语法
其中,’array’指的是数组引用。
你可以使用Arrays.sort()方法将数组按升序排序。
多种方法
我们已经提供了不同方法的解决方案。
- 通过使用for循环
-
通过使用递归
让我们逐一看看这个程序和它的输出。
方法一:通过使用for循环
在这种方法中,我们将使用三个for循环来寻找一个数组的子数。第一个循环标记子数的开始,第二个循环标记子数的结束,而第三个循环则打印子数。
例子
输出
方法-2:通过使用递归
在这种方法中,我们使用递归找到所有的子数。
例子
输出
在这篇文章中,我们探讨了如何通过使用Java编程语言找到一个给定数组的所有子数。