주요 요소:
길이가 l인 배열 arr의 다수 요소는 1/2배 이상 나타나는 요소이므로 이러한 요소는 최대 하나입니다.
첫 번째 인수로 항상 오름차순으로 정렬되는 배열 arr를 취하는 isMajority()와 같은 JavaScript 함수를 작성해야 합니다.
함수의 두 번째 인수는 숫자가 될 것이며, 이에 대해 배열을 검색하고 해당 숫자가 다수 요소이면 true를 반환하고 그렇지 않으면 false를 반환합니다.
예를 들어 -
입력 배열과 숫자가 -
인 경우const arr = [5, 5, 5, 12, 15]; const num = 5;
그러면 출력은 다음과 같아야 합니다. -
const output = true;
(5 / 2) =2.5보다 큰 5가 3번 나타나기 때문입니다. (배열 길이의 절반).
배열이 정렬되어 있고 다수 요소가 있는 경우 해당 숫자가 배열의 절반 이상에 걸쳐 있어야 하므로 항상 중간 요소가 됩니다.
이 논리를 사용하여 주어진 숫자가 다수 요소인지 확인할 수 있습니다.
예시
이에 대한 코드는 -
const arr = [5, 5, 5, 12, 15]; const num = 5; const isMajority = (arr = [], num = 1) => { const { length } = arr; if(!length){ return false; }; const middle = Math.floor(length / 2); if(arr[middle] === num){ return true; }else{ return false; }; }; console.log(isMajority(arr, num));
출력
콘솔의 출력은 -
true