data structures using searching can start from somewhere middle in the list rather than from the beginning to optimize performance we can also improve the performance of jump search algorithm by repeatedly applying jump search for exampleif the size of the list is , , (nthe jump interval would then be = noweven the identified interval has elements and is again large list sojump search can be applied again with new step size of thusevery time we have desired interval with large number of valuesthe jump search algorithm can be applied again but with smaller step howeverin this casethe complexity of the algorithm will no longer be (nbut will approach logarithmic value complexity of jump search algorithm jump search works by jumping through the array with step size (optimally chosen to be nto find the interval of the value once this interval is identifiedthe value is searched using the linear search technique thereforethe complexity of the jump search algorithm can be given as (nprogramming example write program to search an element in an array using jump search #include #include #include #define max int jump_search(int []int lowint highint valint nint stepistep sqrt( )for( = ; <step; ++if(val [step]high step else low step for( =low; <=high; ++if( [ ]==valreturn ireturn - int main(int arr[max]invalposclrscr()printf("\ enter the number of elements in the array ")scanf("% "& )printf("\ enter the elements ")for( <ni++scanf("% "&arr[ ])printf("\ enter the value to be searched ")scanf("% "&val)pos jump_search(arr - valn)