您的位置:首页 > 理论基础

东北大学——考研初试——计算机842——查找编程题

2020-05-31 23:00 274 查看

顺序查找

折半查找

int BiSearch(int A[], int length, int key) {
int low = 0;
int high = length - 1;
int mid;
while(low <= high) {
mid = (low + high)/2;
if(A[mid] == key) {
return mid
} else if(key < A[mid]) {
high = mid - 1;
} else {
low = mid + 1;
}
}
return -1
}

字符串查找

//主字符串从0开始
int Index(char str[], int length, char substr[], int subLength, int pos) {
int i = pos;
int j = 0;
while(i < length && j < subLength) {
if(str[i] == substr[j]) {
++i;
++j;
} else {
i = i - j + 2;
j = 0;
}
}
if(j >= subLength) {
return i - subLength;
} else {
return -1;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: