概念明天补上。。。
顺序查找,用了哨兵,减少检查数组长度的次数,据说这样可以让顺序查找的性能提升一倍。
优点:无序任何假设条件(如数组有序等)。
缺点:效率低。
#include <stdio.h>
int ssearch(int* arr, int n, int key)
{
int i = 0;
arr[n] = key;
for(i=0;arr[i]!=key;i++);
if(i==n)
{[......]
概念明天补上。。。
顺序查找,用了哨兵,减少检查数组长度的次数,据说这样可以让顺序查找的性能提升一倍。
优点:无序任何假设条件(如数组有序等)。
缺点:效率低。
#include <stdio.h>
int ssearch(int* arr, int n, int key)
{
int i = 0;
arr[n] = key;
for(i=0;arr[i]!=key;i++);
if(i==n)
{[......]
顺序查找也叫线性查找,是最简单的查找算法。穷举法遍历每个元素,查找是否包含元素t。
平均、最坏性能O(N)
#include <stdio.h>
typedef int TYPE;
int search(TYPE* arr, int n, TYPE t)
{
int i=0;
for(i=0; i<n; i++)
{
if(arr[i]==t)
{
re[......]