| #include <stdio.h> | |
| int index_sequential(int a[], int n, int key){ | |
| int index[50], i, j = 0, k, gap = 3; | |
| for(i = 0; i < n; i += gap){ | |
| index[j++] = i; | |
| } | |
| //Check if last index is last element index | |
| if(index[j-1] != n - 1){ | |
| index[j++] = n - 1; | |
| } | |
| for(i = 0; i < j - 1; i++){ | |
| if(key >= a[index[i]] && key <= a[index[i+1]]){ | |
| for(k = index[i]; k <= index[i + 1]; k++){ | |
| if(key == a[k]){ | |
| return k; | |
| } | |
| } | |
| } | |
| } | |
| return -1; | |
| } | |
| int main(){ | |
| int a[] = {1,2,3,4,5}; | |
| int n = sizeof(a) / sizeof(a[0]); | |
| int element; | |
| printf("Enter element to search: "); | |
| scanf("%d", &element); | |
| int pos = index_sequential(a, n, element); | |
| if(pos != -1){ | |
| printf("Element found at position: %d\n", pos + 1); | |
| } else { | |
| printf("Element not found\n"); | |
| } | |
| return 0; | |
| } |
Friday, 4 November 2016
Program 7 - Index Sequential Search
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment