插補搜尋法

2021-08-19 15:48:08 字數 1178 閱讀 9512

/*

有問題

插補搜尋法

說明:如果卻搜尋的資料分布平均的話,可以使用插補(interpolation)搜尋法來進行搜尋,在搜尋的物件大於500時,插補搜尋法會比

二分搜尋法 來的快速。

*/#include

#include

#include

#define max 10

#define swap(x,y)

void quicksort(int, int, int

);int intsrch(int, int

);int main(void

) ;

inti, find;

srand(time(null));

for(i = 0; i < max; i++)

quicksort(number,

0, max-1

);

printf(

"數列:");

for(i = 0; i < max; i++)

printf(

"%d

", number[i]);

printf(

"\n輸入尋找物件:");

scanf("%d

", &find);

if((i = intsrch(number, find)) >= 0

) printf(

"找到數字於索引 %d

", i);

else

printf(

"\n找不到指定數");

printf("\n

");return0;

}int intsrch(int number, int

find)

return -1;}

void quicksort(int number, int left, int

right)

quicksort(number, left, i-1);//

對左邊進行遞迴

quicksort(number, j+1, right); //

對右邊進行遞迴

}}

執行結果:

C 經典演算法題 插補搜尋法

如果卻搜尋的資料分布平均的話,可以使用插補 interpolation 搜尋法來進行搜尋,在搜尋的物件大於500時,插補搜尋法會比 二分搜尋法 來的快速。插補搜尋法是以資料分布的近似直線來作比例運算,以求出中間的索引並進行資料比對,如果取出的值小於要尋找的值,則提高下界,如果取出的值大於要尋找的 值...

r語言插補法 R語言用多重插補法估算相對風險

在這裡,我將用r中的乙個小模擬示例進行說明。首先,我們使用x1和x2雙變數法線和y模擬大型資料集,其中y遵循給定x1和x2的邏輯模型。首先,我們模擬乙個非常大的完整資料集 simulate完整資料 expit function x n 100000 x mvrnorm n,mu c 0,0 sigm...

r語言插補法 R語言 缺失值處理之多重插補

筆者寄語 缺失值是資料清洗過程中非常重要的問題 其他方法可見 r語言 異常值檢驗 離群點分析 異常值處理 筆者在進行mice包的多重插補過程中遇到相當多的問題。大致的步驟簡介如下 缺失資料集 mcmc估計插補成幾個資料集 每個資料集進行插補建模 glm lm模型 將這些模型整合到一起 pool 評價...