Упражнения на Java: Проверьте, является ли данное целое число степенью 2 или не использует время O (1)
Java Basic: упражнение 205 с решением
Напишите программу на Java, чтобы проверить, является ли данное целое число степенью 2 или не использует время O (1).
Примечание: O (1) означает, что это занимает постоянное время, например, 12 наносекунд или две минуты, независимо от количества данных в наборе.
O (n) означает, что это занимает некоторое время, линейное с размером набора, поэтому набор, вдвое превышающий размер, займет вдвое больше времени. Вы, вероятно, не хотите помещать миллион объектов в один из них.
Пример решения:
Java-код:
import java.util.*;
public class Main
{
public static void main(String[] args)
{
boolean b = true;
Scanner in = new Scanner(System.in);
System.out.print("Input a number : ");
int num = in.nextInt();
{
while(num!=1)
{
if(num%2!=0)
{
b=! b;
System.out.print(b);
System.exit(0);
}
num = num / 2;
}
System.out.print(b);
}
}
}
Пример вывода:
Введите число: 25 ложный
Блок - схема:
Редактор кода Java:
Внесите свой код и комментарии через Disqus.
Предыдущий: Напишите Java-программу для вычисления x n % y, где x, y и n - все 32-битные целые числа.
Далее: Напишите программу на Java, чтобы найти все уникальные комбинации из набора номеров кандидатов. Сумма чисел будет равна заданному целевому числу.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования