> 백엔드 개발 > PHP 튜토리얼 > 정렬된 배열에 나타나는 숫자의 빈도를 계산하는 PHP 학습

정렬된 배열에 나타나는 숫자의 빈도를 계산하는 PHP 학습

little bottle
풀어 주다: 2023-04-06 10:34:01
앞으로
2451명이 탐색했습니다.

이 기사의 주요 내용은 PHP를 사용하여 정렬된 배열에 숫자가 나타나는 횟수를 계산하는 것입니다. 관심 있는 친구들이 이에 대해 자세히 알아볼 수 있기를 바랍니다.

질문: 정렬된 배열에 숫자가 나타나는 횟수를 셉니다.

아이디어 1: 일반 순회, 동일한 숫자가 있는지 비교하고 발견되면 자동으로 +1

아이디어 2: 이분법을 사용하여 동일한 숫자를 먼저 찾고 아래 첨자를 기록합니다. 그런 다음 0에서 아래 첨자로 이동하고 아래 첨자부터 시작 부분까지 총 같음 수를 기록합니다.

left=getLeft(data,k)
right=getRight(data,k)
retun right-left+1

getLeft data,k
    left=0
    right=arr.length-1
    mid=left+(right-left)/2
    while  left<=right
        if arr[mid]<k    //关键
            left=mid+1
        else
            right=mid-1
        mid=left+(right-left)/2
    return left
getRight data,k
    left=0
    right=arr.length-1
    mid=left+(right-left)/2 
    while  left<=right
        if arr[mid]<=k   //关键
            left=mid+1
        else
            right=mid-1
        mid=left+(right-left)/2
    return right
로그인 후 복사

관련 튜토리얼: PHP 비디오 튜토리얼

위 내용은 정렬된 배열에 나타나는 숫자의 빈도를 계산하는 PHP 학습의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
php
원천:cnblogs.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿