algorithm4 JavaScript 알고리즘 (12) Naive Search 잊을만하면 계속 돌아오는 알고리즘 포스팅 ✌ 오늘 배워본 알고리즘은 pattern searching 알고리즘 중 하나인 Naive Search (문자열 검색 알고리즘) 이다. 패턴 검색 알고리즘은 문장에서 원하는 문자열을 찾는 알고리즘을 말한다. 전체문자열에서 문자 하나하나 비교해가면서 원하는 단어가 맞는지 확인하는 것이 핵심이다. Pattern Searching algorithm is string matching algorithm which is used to find a pattern or a substring in another string. function naiveSearch(long, short){ var count = 0; // 갯수 초기값 세팅 for(var i = 0; i < long.l.. 2022. 10. 10. JavaScript 알고리즘 (11) Binary Search 요즘 알고리즘 공부하는 맛을 알게 된 새발자🐣 처음에는 아무것도 모르고 듣기만 했는데, 2번 보고 3번 보니 이해가 가면서 재미가 있다. 오늘은 Searching Algorithm 의 두번째 방법인 Binary Search (2진 탐색) 을 공부해보았다. Linear search 가 1번부터 순서대로 검사하는 방식이었다면, Binary search 는 가운데에서 반으로 쪼개서 검사한다. (고구마 먹을 때 반으로 쪼개서 먹듯이) 핵심만 말하자면 배열을 반으로 쪼개서 둘중 하나를 계속 버리고 또 쪼개서 버리고 이런식으로 추려나간다. The algorithm is based on a well know domain divide and conquer technique. It repeatedly breaks dow.. 2022. 9. 25. JavaScript 알고리즘(10) Linear Search Linear Search 는 값을 찾을 때 순서대로 하나하나씩 다 검사하는 searching algorithm 이다. Linear Search is defined as a sequential search algorithm that starts at one end and goes through each element of a list until the desired element is found, 우리가 흔히 알고 있는 for문을 사용하여 하나하나씩 검사하는 방법을 사용한다. 이게 가장 기본적인 방식이고 이 알고리즘을 기준으로 여러 알고리즘들을 비교할 수 있을 것 같다. function linearSearch(arr, value) { for(var i = 0; i < arr.length; i++){ if(.. 2022. 9. 12. JavaScript 알고리즘(5) Same Frequency Counter Pattern 요즘에는 자바스크립트로 알고리즘 코드 패턴 공부 중이다. 여러 패턴들을 익히면서 재미를 찾아가는 중이다. 오늘 공부한 패턴은 Frequency Counter Pattern 이다. JavaScript 알고리즘(5) Same Frequency Counter Pattern 두개의 인자가 같은 숫자 혹은 글자 인지를 비교할 때, 하나의 객체에 요소 하나하나를 저장해 중복의 갯수를 표시하고, 나머지와 비교하며 같으면 제거해버린다. 만약에 같은 숫자라면 빈 객체로 돌아갈 것이고(true), 그게 아니라면 뭐라도 하나 남아있을 것이다.(false) function sameFrequency(firstNum, secondNum){ // 1. 숫자를 문자열로 만든다. (그래야 배열화할수있기 때문) const first =.. 2022. 3. 23. 이전 1 다음 반응형