public/subjects/binary_search
Abdelilah Khossan 3a09fc145c
docs(rust piscine): Add binary_search optional exercise subject (#2222)
* docs(rust piscine): Add binary_search optional exercise subject

* docs(rust piscine): Update binary_search subject
2023-10-04 17:20:42 +01:00
..
README.md docs(rust piscine): Add binary_search optional exercise subject (#2222) 2023-10-04 17:20:42 +01:00

README.md

Instructions

Write a function called binary_search that performs a binary search on a sorted list of integers. The function should take the following arguments:

  • sorted_list: &[i32]: A reference to a sorted list of integers to search within.
  • target: i32: The integer value to search for within the list.

Expected Function

pub fn binary_search(sorted_list: &[i32], target: i32) -> Option<usize> {
	// Your code goes here
}

The function should return an Option<usize> representing the index of the target in the list if found, or None if the target is not in the list.

Usage

Here is a possible runner to test your function:

use binary_search::binary_search;

fn main() {
    let sorted_list = vec![1, 3, 5, 7, 9, 11, 13];
    let target = 7;
    
    match binary_search(&sorted_list, target) {
        Some(index) => println!("{} found at index {}", target, index),
        None => println!("{} not found in the list", target),
    }
}

And its output:

$ cargo run
7 found at index 3

Resources