[2022-12-21 ๐Ÿฅฒ TIL ]

Burkeyยท2022๋…„ 12์›” 21์ผ
0

TIL

๋ชฉ๋ก ๋ณด๊ธฐ
27/157
function binarySearch(arr, num) {
  let last = arr.length - 1
  let first = 0
  let count = 0;
  let middle = Math.floor((last + first) / 2);
  console.log("middle", middle)
  while (arr[middle] !== num && first <= last ){
    count += 1
    console.log("count: ", count)
    console.log('first', first, "middle", middle, 'last', last)
    if(arr[middle] >= num){
      if(arr[middle] === num) return middle;
      if(arr[first] === num) return first;
      last = middle - 1;
      middle = Math.floor((last + first) / 2);
    }else if (arr[middle] < num){
      first = middle + 1;
      if(arr[first] === num) return first;
      if(arr[last] === num ) return last;
      middle = Math.floor((last + first) / 2);
    }
  }
  console.log('first', first, "middle", middle, 'last', last)  
  if(arr[middle] !== num) return -1;
  return middle;
}

์ด์ง„ ํƒ์ƒ‰ ํŠธ๋ฆฌ ๋„ˆ๋ฌด ์–ด๋ ต๋‹ค..
-1 ์„ ๋ฐ˜ํ™˜ํ•ด์•ผ ํ•  ๋•Œ์— ๋ฐ˜๋ณต๋ฌธ์„ ๋น ์ ธ ๋‚˜์˜ฌ ์ˆ˜ ์žˆ๋Š” ์กฐ๊ฑด์„ ์ฐพ๋Š”๊ฒŒ ์–ด๋ ค์›Œ ๊ฒฐ๊ตญ ๋‹ต์„ ๋ณด๊ณ  ์•Œ ์ˆ˜ ์žˆ์—ˆ๋‹ค.

function nav (str,find) {
  let count = 0
  for (let i = 0; i < str.length; i++){
    for(let j = 0; j < find.length; j++){
      if(find[j] !== str[i+j]){
        break;
      }
      if(j === find.length-1) {
        count ++;
      }
    }
  }
  return count;
}
console.log(nav('stttttttrre', 'rr'))
console.log(nav('sttttrttrre', 'tr'))
profile
์Šคํƒฏ ์˜ฌ๋ฆฌ๋Š” ์ค‘

0๊ฐœ์˜ ๋Œ“๊ธ€