问题
编程题:素数又称质数,是指大于1的自然数。且除了1和他本身以外不再有其他因子。输入两个正整数a和b,输出a与b之间的全部素数,每五个数换一行。假设2<=a<=b。
例如 输入10和15,则输出结果为11 13
Java实现
public static void test01(){
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
int size = 0;
for (int i = a+1; i < b; i++) {
boolean flag = true;
if (i == 2){
System.out.print("2"+" ");
size++;
continue;
}
//优化
if (i % 2 == 0){
continue;
}
for (int j = 2; j < i; j++) {
if (i % j == 0) {
flag = false;
}
}
if (flag) {
System.out.print(i+" ");
size++;
}
if (size == 5) {
System.out.println();
size = 0;
}
}
}
- 时间复杂度:O(n^2)
- 空间复杂度:O(1)