- public class BaseAlgorithm {
- public static void main(String[] args) {
- int[] arr = { 1, 7, 3, 30, 55, 21, 3, 5, 1, 7, 3 };
- System.out.println(findMaxValue(arr));
- System.out.println(findMostValue(arr));
- System.out.println(findMaxLen(arr));
- }
- /**
- * 找出数组中最大元素
- */
- public static int findMaxValue(int[] arr) {
- int max = arr[0];
- for (int i = 1; i < arr.length; i++) {
- if (arr[i] > max) {
- max = arr[i];
- }
- }
- return max;
- }
- /**
- * 找出数组中重复出现最多的元素
- */
- public static int findMostValue(int[] arr) {
- // 出现最多次数
- int most = 0;
- // 出现最多次数的数组下标
- int index = 0;
- for (int i = 0; i < arr.length; i++) {
- int temp = 1;
- for (int j = i; j < arr.length; j++) {
- if (arr[i] == arr[j]) {
- temp++;
- }
- }
- if (temp > most) {
- most++;
- index = i;
- }
- }
- System.out.println("最多出现了" + most + "次");
- return arr[index];
- }
- /**
- * 找出最长连续递增序列的长度
- */
- public static int findMaxLen(int[] arr) {
- int maxLen = 1;
- int temp = 1;
- for (int i = 0; i < arr.length - 1; i++) {
- if (arr[i + 1] >= arr[i]) {
- temp++;
- } else {
- if (temp > maxLen) {
- maxLen = temp;
- }
- temp = 1;
- }
- }
- return maxLen;
- }
- }
来源: http://www.phpxs.com/code/1002396/