1. Linear Search
Intuition
Loop i from 1 to x. If i * i == x return i; if i * i > x return i - 1.
When to apply: Basic baseline.
Algorithm
- Step 1: If x == 0 return 0.
- Step 2: Loop i = 1 while (long)i * i <= x: i++.
- Step 3: Return i - 1.
#include <iostream>#include <vector>#include <string>#include <algorithm>using namespace std; class Solution {public: int mySqrt(int x) { if (x == 0) return 0; long long i = 1; while (i * i <= x) { i++; } return (int)(i - 1); }}; int main() { // Sample driver execution cout << "Execution completed successfully." << endl; return 0;} Time & Space Complexity
- Time complexity:
O(sqrt(x))— Loop runs sqrt(x) times. - Space complexity:
O(1)— Uses constant O(1) space.