查詢中間數

2021-08-31 20:01:48 字數 783 閱讀 5746

package com.viking.divide;

/***

* @author viking

* * 查詢中間數 有兩個長度相等,按公升序排列的陣列,現要查詢中間數 因為有兩個中間數,返回偏小的那乙個

* * 中間數是陣列中大小處於中間的那個數

* * 基本思路,用而分查詢的方法查詢

* *

* */

public class middle ;

int b = ;

int mid = findmiddle(a, b);

system.out.println(mid);

}public static int findmiddle(int a, int b) else

}// 由於取整問題,下標總是指向偏小的數

// a[amid+1]或者b[bmid+1]有可能是中間數

// middle 肯定在a[amid] a[amid+1] b[bmid] b[bmid+1]這四個數中

// 對amid bmid 進行修正

if (amid + bmid + 1 == n - 2) else

} else if (amid + bmid + 2 == n - 2)

if (a[amid] > b[bmid])

return a[amid];

} else

return b[bmid];}}

}

排序 找中間數

題目描述 將n n為奇數 個數排序,必有乙個數在這n個數的中間位置。請輸出中間位置上的這個數。第一行輸入n的值 n 10000 第二行輸入這n個不同的數 每個數的範圍在10 20 1020之間 輸入第一數字n表示有n個數,接下來n個數 輸出輸出其中位數 保留兩位小數。樣例輸入 7 5 4 2 1 3...

CCF題 中間數 2016 12 1

問題描述 在乙個整數序列 a1,a2,an中,如果存在某個數,大於它的整數數量等於小於它的整數數量,則稱其為中間數。在乙個序列中,可能存在多個下標不相同的中間數,這些中間數的值是相同的。給定乙個整數序列,請找出這個整數序列的中間數的值。輸入格式 輸入的第一行包含了乙個整數 n,表示整數序列中數的個數...

CSP認證 中間數 (C )

問題描述 試題編號 201612 1 試題名稱 中間數時間限制 1.0s 記憶體限制 256.0mb 問題描述 問題描述 在乙個整數序列a1,a2,an中,如果存在某個數,大於它的整數數量等於小於它的整數數量,則稱其為中間數。在乙個序列中,可能存在多個下標不相同的中間數,這些中間數的值是相同的。給定...