Java经典编程题

题目 1:斐波那契数列

题目要求 :编写一个方法,输入正整数n,输出斐波那契数列的第n项。斐波那契数列的定义是:F(0)=0F(1)=1, 当n > 1时,F(n)=F(n - 1)+F(n - 2)

答案

复制代码
public class Fibonacci {
    public static int fib(int n) {
        if (n == 0) return 0;
        int a = 0, b = 1;
        for (int i = 2; i <= n; i++) {
            int c = a + b;
            a = b;
            b = c;
        }
        return b;
    }
}

题目 2:字符串反转

题目要求:编写一个方法,将输入字符串进行反转。

答案

复制代码
public class ReverseString {
    public static String reverse(String s) {
        return new StringBuilder(s).reverse().toString();
    }
}

题目 3:判断素数

题目要求:编写一个方法,判断输入的正整数是否为素数(质数)。

答案

复制代码
public class PrimeChecker {
    public static boolean isPrime(int n) {
        if (n <= 1) return false;
        for (int i = 2; i <= Math.sqrt(n); i++) {
            if (n % i == 0) return false;
        }
        return true;
    }
}

题目 4:冒泡排序

题目要求:编写一个方法,使用冒泡排序算法对整数数组进行升序排序。

答案

复制代码
public class BubbleSort {
    public static void sort(int[] arr) {
        int n = arr.length;
        for (int i = 0; i < n - 1; i++) {
            for (int j = 0; j < n - i - 1; j++) {
                if (arr[j] > arr[j + 1]) {
                    int temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = temp;
                }
            }
        }
    }
}

题目 5:计算阶乘

题目要求 :编写一个方法,计算输入正整数n的阶乘n!

答案

复制代码
public class Factorial {
    public static int factorial(int n) {
        if (n == 0) return 1;
        int result = 1;
        for (int i = 1; i <= n; i++) {
            result *= i;
        }
        return result;
    }
}
相关推荐
foundbug9998 分钟前
自适应滤除直达波干扰的MATLAB实现
开发语言·算法·matlab
掌心向暖RPA自动化2 小时前
如何获取网页某个元素在屏幕可见部分的中心坐标影刀RPA懒加载坐标定位技巧
java·javascript·自动化·rpa·影刀rpa
日取其半万世不竭2 小时前
Minecraft Java版社区服务器搭建教程(Linux,适合新手)
java·linux·服务器
CN-Dust2 小时前
【C++】while语句例题专题
数据结构·c++·算法
灵智实验室2 小时前
PX4位置速度估计技术详解(四):LPE 激光雷达高度融合的实现错误
算法·无人机·px 4
CQU_JIAKE2 小时前
【A】3742,3387,并查集
算法
gihigo19982 小时前
CHAN时延估计算法(二维/三维定位实现)
算法
TeamDev2 小时前
JxBrowser 9.0.0 版本发布啦!
java·前端·混合应用·jxbrowser·浏览器控件·跨平台渲染·原声输入
freexyn3 小时前
Matlab自学笔记七十六:表达式的展开、因式分解、化简、合并同类项
笔记·算法·matlab
样例过了就是过了3 小时前
LeetCode热题 不同路径
c++·算法·leetcode·动态规划