欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

java求中位數算法 和最大的

吉茹定1年前8瀏覽0評論

在計算機編程中,求中位數和求最大值是一些非常常見的問題。而在Java語言中,也有很多種方法可以解決這些問題。下面我們就來看一下Java中求中位數和最大值的方法。

Java求中位數算法

public double findMedianSortedArrays(int[] nums1, int[] nums2) {
int[] result = new int[nums1.length + nums2.length];
int i = 0, j = 0, k = 0;
while (i< nums1.length && j< nums2.length) {
if (nums1[i]< nums2[j]) {
result[k] = nums1[i];
i++;
} else {
result[k] = nums2[j];
j++;
}
k++;
}
while (i< nums1.length) {
result[k] = nums1[i];
i++;
k++;
}
while (j< nums2.length) {
result[k] = nums2[j];
j++;
k++;
}
if (result.length % 2 == 0) {
return (double) (result[result.length / 2 - 1] + result[result.length / 2]) / 2;
} else {
return result[result.length / 2];
}
}

上述代碼是一種簡單的求中位數的算法。這個算法首先將兩個數組合并成一個有序的數組,然后再根據數組的長度奇偶性求出中位數。值得注意的是,這個算法的時間復雜度為O(m+n)。

Java求最大值算法

public int findMax(int[] arr) {
int max = Integer.MIN_VALUE;
for (int i : arr) {
if (i >max) {
max = i;
}
}
return max;
}

上述代碼是一種簡單的求最大值的算法。這個算法通過遍歷數組找到最大的數。需要注意的是,這個算法假設數組中不存在負數,如果數組中有負數,則需要進行一些改動。

綜上所述,Java語言可以通過不同的算法求解中位數和最大值問題,并且這些算法的時間復雜度、空間復雜度等也有所不同,開發者應該根據具體情況選擇最適合的方法。