打印奇数位置数组元素的Java程序
一个数组存储数据的集合 相同的类型。它是相同类型元素的固定大小顺序集合。在一个数组中,如果有“N”个元素,则数组迭代从0开始,以“N-1”结束。
数组中的奇数位置是具有偶数索引的位置,反之亦然。
例子:
Input : arr[] = { 10,20,30,40,50 }
Output : 10 30 50
Input : arr1[] = { -5,0,2,5,76,9 }
Output : -5 2 76
我们将通过两种方法在奇数位置打印元素:
- 通过检查位置是否为奇数,即能否被 2 整除(因为索引从 0 开始),然后打印元素。
- 通过维护一个标志指针,该指针将被初始化为 1 并开始遍历数组。如果标志为 1,则打印该元素并将标志更改为 0,否则如果标志为 0,则将标志设为 1。
方法一:
通过检查位置是否为奇数,即能否被 2 整除(因为索引从数组中的 0 开始),然后打印元素。
Java
// Java program to print the elements at odd positions
import java.util.*;
public class PrintOddElementsInArray {
public static void main(String[] args)
{
// Initialized array
int inputArray[] = new int[] { 100, -500, 450, -200,
1000, -213, 750 };
System.out.println("Existing array elements ..");
for (int i = 0; i < inputArray.length; i++) {
System.out.println(inputArray[i]);
}
System.out.println(
"Array elements at odd position..");
// Though the logic looks like taking even position,
// if 10,20,30,40,50 are elements we need to get
// 10,30,50. So followed the logic like this
for (int i = 0; i < inputArray.length; i++) {
if (i % 2 == 0) {
System.out.println(inputArray[i]);
}
}
}
}
Java
// Java program to print the elements at odd positions
import java.util.*;
public class PrintOddElementsInArray {
public static void main(String[] args)
{
// Initialized array
int inputArray[] = new int[] { 100, -500, 450, -200,
1000, -213, 750 };
System.out.println("Existing array elements ..");
for (int i = 0; i < inputArray.length; i++) {
System.out.println(inputArray[i]);
}
System.out.println(
"Array elements at odd position..");
int flag = 1;
for (int i = 0; i < inputArray.length; i++) {
if (flag == 1) {
System.out.print(inputArray[i] + " ");
flag = 0;
}
else
flag = 1;
}
}
}
输出
Existing array elements ..
100
-500
450
-200
1000
-213
750
Array elements at odd position..
100
450
1000
750
- 时间复杂度: O(n)
- 空间复杂度: O(1)
方法二:
通过维护一个标志指针,该指针将被初始化为 1 并开始遍历数组。如果标志为 1,则打印该元素并将标志更改为 0,否则如果标志为 0,则将标志设为 1。
Java
// Java program to print the elements at odd positions
import java.util.*;
public class PrintOddElementsInArray {
public static void main(String[] args)
{
// Initialized array
int inputArray[] = new int[] { 100, -500, 450, -200,
1000, -213, 750 };
System.out.println("Existing array elements ..");
for (int i = 0; i < inputArray.length; i++) {
System.out.println(inputArray[i]);
}
System.out.println(
"Array elements at odd position..");
int flag = 1;
for (int i = 0; i < inputArray.length; i++) {
if (flag == 1) {
System.out.print(inputArray[i] + " ");
flag = 0;
}
else
flag = 1;
}
}
}
输出
Existing array elements ..
100
-500
450
-200
1000
-213
750
Array elements at odd position..
100 450 1000 750
- 时间复杂度: O(n)
- 空间复杂度: O(1)