HZFE / algorithms-solving

1 stars 0 forks source link

2022-08-25 #27

Open github-actions[bot] opened 2 years ago

gongpeione commented 2 years ago

704 Binary Search

/*
 * @lc app=leetcode id=704 lang=typescript
 *
 * [704] Binary Search
 */

// @lc code=start
function search(nums: number[], target: number): number {
    let right = nums.length - 1;
    let left = 0;

    while (right >= left) {
        const middle = left + ~~((right - left) / 2)
        if (nums[middle] > target) {
            right = middle - 1;
        } else if (nums[middle] < target) {
            left = middle + 1;
        } else {
            return middle
        }
    }

    return -1;
};
// @lc code=end

Nickname: Geeku From vscode-hzfe-algorithms

Akiq2016 commented 2 years ago
// @lc code=start
/**
 * @param {number[]} nums
 * @param {number} target
 * @return {number[]}
 */
var twoSum = function (nums, target) {
  const map = {};
  let res = [];
  let index = 0;
  while (index < nums.length) {
    const another = target - nums[index];
    if (map[another] !== undefined && map[another] !== index) {
      res = [index, map[another]];
      break;
    } else {
      map[nums[index]] = index;
    }
    index++;
  }
  return res;
};
// @lc code=end