JavaScript에서 모드를 찾는 방법: 1. 새 배열을 만듭니다. 2. 각 값이 나타나는 횟수를 계산합니다. 3. 배열을 탐색하여 모드를 찾습니다.
이 기사의 운영 환경: Windows 7 시스템, javascript 버전 1.8.5, DELL G3 컴퓨터
javascript로 모드를 찾는 방법은 무엇입니까?
LeetCode의 모드 찾기 - JavaScript 구현
n 크기의 배열이 주어졌을 때 모드를 찾습니다. 모드는 배열에서 ⌊ n/2 ⌋ 이상 나타나는 요소를 나타냅니다.
배열이 비어 있지 않고 주어진 배열에 대한 모드가 항상 있다고 가정할 수 있습니다.
예 1:
입력: [3,2,3]
출력: 3
예 2:
입력: [2,2,1,1,1,2,2]
출력: 2
내 생각:
새 배열을 만들고, 각 값이 나타나는 횟수를 세고, 배열을 탐색하여 모드를 찾습니다.
const majorityElement = function (nums) { let arry = [] for (let i in nums) { if (!arry[nums[i]]) { arry[nums[i]] = !!arry[nums[i]] + 1 }else { arry[nums[i]] ++ } } for(let i in arry){ if(arry[i] > nums.length/2){ return i } } };
leetcode에 대한 가장 빠른 솔루션:
문제 해결 아이디어:
카운터와 중간 값을 사용하고 먼저 중간 값을 배열의 첫 번째 비트와 동일하게 하고 순회 중에 동일 카운터를 1 증가시키고, 다르면 1 감소시키며, 0으로 감소하면 현재 순회가 완료된 후 중간값인 값을 반환합니다. 방법. [추천 학습: "js 기본 튜토리얼"]
느낌이 매우 이상합니다. 그 안에 오프셋 아이디어가 있습니다
var majorityElement = function(nums) { let count = 0; let majority = nums[0]; for (let i = 0; i < nums.length; i++) { if (count === 0) { majority = nums[i]; } if (majority === nums[i]) { count++; } else { count--; } } return majority; };
위 내용은 자바스크립트에서 모드를 찾는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!