常用查詢演算法

2021-07-04 03:02:16 字數 1070 閱讀 2207

#include

#include

#include

/****************==順序表的查詢********************====*/

//順序表的查詢 :平均o(n) 最好o(1) 最差o(n);

int sqsearch(int r,int n, int key)

} return

0; //沒有查詢到v

}/****************==有序表的查詢********************====*/

//交換值

void swap(int r,int i,int j)

//獲取中間位置

int partition(int r,int low, int high)

//快速排序

void quicksort(int r,int low,int high)

}//列印

void print(int r, int n)

printf("\n");

}//二分查詢 :平均o(log n) 最好o(1)

int binarysearch(int r,int n, int key)else

if(key1;

}else

}return (-1);

} int main()

}printf("順序表查詢:");

printf("%d的位置在:%3d\n\n",key,sqsearch(r,100,key));//輸出查詢結果

printf("\n先進行快速排序使記錄有序,快速排序後:\n");

quicksort(r,0,99);

print(r,100);

printf("二分查詢:");

printf("%d的位置在:%3d\n\n",key,binarysearch(r,99,key));//輸出查詢結果

常用查詢演算法

查詢是在大量的資訊中尋找乙個特定的資訊元素,在計算機應用中,查詢是常用的基本運算,例如編譯程式中符號表的查詢。用關鍵字標識乙個資料元素,查詢時根據給定的某個值,在表中確定乙個關鍵字的值等於給定值的記錄或資料元素。在計算機中進行查詢的方法是根據表中的記錄的組織結構確定的。順序查詢也稱為線形查詢,從資料...

常用查詢演算法

順序查詢是在乙個已知無 或有序 序佇列中找出與給定關鍵字相同的數的具體位置。原理是讓關鍵字與佇列中的數從第乙個開始逐個比較,直到找出與給定關鍵字相同的數為止,它的缺點是效率低下。public static int sequencesearch int array,int des return 1 二...

常用的查詢演算法

1 mid low high 2 2 當k arr mid 時,low mid 1,並重複1 當k 當k arr mid 時,找到,結束。直到low high,還沒找到那麼說明該關鍵字不存在。核心 實現 演算法步驟 1 第一步確定查詢節點在那個表中的那一塊。2 第二步在確定的塊中找到該節點。1 雜湊...