給定兩個大小為 m 和 n 的正序(從小到大)陣列 nums1 和 nums2。請你找出並返回這兩個正序陣列的中位數。
我的方法粗暴,申請一個長度等於二者之和的陣列,然後先後拷貝到新陣列,繼續排序,然後根據長度求到中位數;我的時間複雜度和空間複雜度都算不上最好,所以就是個暴力解法,有更好的解法歡迎指正(我現在只學習了氣泡排序)
class Solution {
public double findMedianSortedArrays(int[] nums1, int[] nums2) {
int n = nums1.length;
int m = nums2.length;
int[] array = new int[n+m];
System.arraycopy(nums1,0,array,0,n);
System.arraycopy(nums2,0,array,n,m);
Arrays.sort(array);
if((n+m) % 2 != 0){
int s = (n+m) / 2;
return array[s];
}else{
int a = (n+m) / 2;
return(array[a] + array[a-1])*1.0 / 2;
}
}
}
相關文章
- 尋找兩個正序陣列中的中位數陣列
- 4. 尋找兩個正序陣列的中位數陣列
- 從陣列中找出N個數,其和為M的所有可能陣列
- 給定一個整數陣列 nums 和一個目標值 target,請你在該陣列中找出和為目標值的那 兩個 整數,並返回他們的陣列下標。陣列
- 力扣演算法題:尋找兩個正序陣列的中位數力扣演算法陣列
- 尋找兩個正序陣列的中位數問題,方法一:合併陣列檢索法陣列
- GO實現:leetcode之尋找兩個正序陣列的中位數GoLeetCode陣列
- 改進,從一個陣列中找出 N 個數,其和為 M 的所有可能陣列
- 給定一個整數陣列,找出總和最大的連續數列,並返回總和。陣列
- python實現給定一個數和陣列,求陣列中兩數之和為給定的數Python陣列
- 【LeetCode Hot 100】4. 尋找兩個正序陣列的中位數LeetCode陣列
- 兩個有序陣列的中位數陣列
- Python有 n 個物品和一個大小為 m 的揹包. 給定陣列 A 表示每個物品的大小和陣列 V 表示每個物品的價值.。。Python陣列
- 給定陣列中找到最大的兩個數陣列
- 用 PHP 在 力扣 刷演算法 [尋找兩個正序陣列的中位數]{有空就更}PHP力扣演算法陣列
- leetcode 4. Median of Two Sorted Arrays 尋找兩個正序陣列的中位數(困難)LeetCode陣列
- 尋找兩個有序陣列的中位數陣列
- 4. 兩個排序陣列的中位數排序陣列
- 在陣列中尋找和為指定值的兩個數陣列
- 給定一個大小為 n 的陣列,找到其中的眾數。眾數是指在陣列中出現次數大於 ⌊ n/2 ⌋ 的元素。陣列
- 編寫一個函式,實現兩個整型陣列的合併(將兩個整型陣列a和b合併成一個從小到大有序排列的整形陣列c,並在主函式中測試)。函式陣列
- 演算法-兩個排序陣列的中位數演算法排序陣列
- 尋找陣列中和為定值的兩個數陣列
- 從一個無序,不相等的陣列中,選取N個數,使其和為M實現演算法(javascript實現)陣列演算法JavaScript
- 求無序陣列總第n大的數陣列
- 兩個陣列分別取出一個來相加,找出和最小的k個陣列
- LeetCode-兩個排序陣列的中位數LeetCode排序陣列
- [Python手撕]兩個升序陣列的中位數Python陣列
- 給定一個排序陣列和一個目標值,在陣列中找到目標值,並返回其索引。如果目標值不存在於陣列中,返回它將會被按順序插入的位置。排序陣列索引
- 給定一個按非遞減順序排序的整數陣列 A,返回每個數字的平方組成的新陣列,要求也按非遞減順序排序。排序陣列
- LeetCode 4. 兩個排序陣列的中位數LeetCode排序陣列
- LeetCode-4. 兩個排序陣列的中位數LeetCode排序陣列
- 陣列排序(從小到大)陣列排序
- 將兩個有序陣列合併為一個有序陣列陣列
- 在一個給定的陣列中查詢陣列中的最大元素是否至少是陣列中每個其他數字的兩倍, 如果是,則返回最大元素的索引,否則返回-1。陣列索引
- 找到兩個陣列中的公共元素陣列
- 兩數之和,返回陣列下標陣列
- 找到無序陣列中最小的k個數陣列