DSAverse
Initializing Sorting Algorithms...
Sorting Algorithm
Binary Tree
Graph Traversal
Preparing interactive visualizations for optimal learning experience...
Initializing Sorting Algorithms...
Preparing interactive visualizations for optimal learning experience...
Initializing Sorting Algorithms...
Preparing interactive visualizations for optimal learning experience...
Watch how Block Search divides the array into blocks and performs linear search within the appropriate block.
Click Start to begin Block Search visualization
Block search is conceptually simpler and easier to implement than jump search.
import math
def block_search(arr, target):
n = len(arr)
block_size = int(math.sqrt(n))
block_start = 0
# Find the appropriate block
while block_start < n:
block_end = min(block_start + block_size - 1, n - 1)
if arr[block_end] >= target:
# Linear search within the block
for i in range(block_start, block_end + 1):
if arr[i] == target:
return i
elif arr[i] > target:
return -1
return -1
block_start += block_size
return -1