已知有兩個等長的非降序序列s1, s2, 設計函式求s1與s2並集的中位數。有序序列a
0 ,a
1 ,⋯,a
n−1
的中位數指a
(n−1)/2
的值,即第⌊(n+1)/2⌋個數(a
0 為第1個數)。
輸入格式:
輸入分三行。第一行給出序列的公共長度n(0輸出格式:
在一行中輸出兩個輸入序列的並集序列的中位數。
輸入樣例1:
51 3 5 7 9
2 3 4 5 6
輸出樣例1:
4輸入樣例2:
6-100 -10 1 1 1 1
-50 0 2 3 4 5
輸出樣例2:
1經過對演算法的初步學習,理論永遠是實踐的基礎。一次過開心hiahia
#include
#include
using
namespace std ;
typedef
struct num num ;
//輸入資料
void
inputlist
(num* list ,
int n)
list -
> next =
null;}
//輸出函式
void
showlist
(num * list)
cout << endl ;
}//連線鍊錶
void
connectlist
(num * p , num * q)
else
if(q ==
null
&& p !=
null
)else
if(p -
> data >= q -
> data)
else
if(p -
> data < q -
> data)
} list -
> next =
null;}
//傳值輸出中位數
兩個有序序列的中位數
5 7 兩個有序序列的中位數 25分 已知有兩個等長的非降序序列s1,s2,設計函式求s1與s2並集的中位數。有序序列a0,a1,an 1a 0,a 1,cdots,a a 0 a 1 a n 1 的中位數指a n 1 2a a n 1 2 的值,即第 n 1 2 lfloor n 1 2 rflo...
兩個有序序列的中位數
問題 已知有兩個等長的非降序序列s1,s2,設計函式求s1與s2並集的中位數。有序序列a 0 a 1 a n 1 的中位數指a n 1 2 的值,即第 n 1 2 個數 a 0 為第1個數 演算法描述 輸入兩個長度自定且等長的陣列,然後對他們進行賦值。演算法的思路是分別取他們的中位數進行比較,假設兩...
兩個有序序列的中位數
7 1 兩個有序序列的中位數 30 分 已知有兩個非降序序列s1,s2,求s1與s2歸併成乙個序列的低位中位數。有序序列a0,a1,an 1的中位數指a n 1 2的值,即第 n 1 2 個數 a0為第1個數 輸入格式 輸入分4行。第一行給出第乙個序列的長度n1 0輸出格式 在一行中輸出兩個輸入序列...