Java编程算法题汇总
1. 冒泡排序算法
冒泡排序是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。
```java
public class BubbleSort {
public static void bubbleSort(int[] arr) {
int n = arr.length;
for (int i = 0; i < n1; i ) {
for (int j = 0; j < ni1; j ) {
if (arr[j] > arr[j 1]) {
int temp = arr[j];
arr[j] = arr[j 1];
arr[j 1] = temp;
}
}
}
}
}
```
2. 快速排序算法
快速排序使用分治法策略来把一个序列分为两个子序列。
```java
public class QuickSort {
public static void quickSort(int[] arr, int low, int high) {
if (low < high) {
int pi = partition(arr, low, high);
quickSort(arr, low, pi 1);
quickSort(arr, pi 1, high);
}
}
private static int partition(int[] arr, int low, int high) {
int pivot = arr[high];
int i = low 1;
for (int j = low; j < high; j ) {
if (arr[j] < pivot) {
i ;
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
int temp = arr[i 1];
arr[i 1] = arr[high];
arr[high] = temp;
return i 1;
}
}
```
3. 查找数组中的最大值
以下是一种简单的方法,在给定的数组中查找最大值:
```java
public class FindMax {
public static int findMax(int[] arr) {
int max = arr[0];
for (int i = 1; i < arr.length; i ) {
if (arr[i] > max) {
max = arr[i];
}
}
return max;
}
}
```
4. 计算斐波那契数列
斐波那契数列是指这样一个数列:0、1、1、2、3、5、8、13、21...。即0 1=1,1 1=2,1 2=3,2 3=5,3 5=8...
```java
public class Fibonacci {
public static int fibonacci(int n) {
if (n <= 1) {
return n;
} else {
return fibonacci(n1) fibonacci(n2);
}
}
}
```
以上是一些常见的Java编程算法题目,通过不断练习和理解这些算法,可以提升自己的编程技能。