ホームページ  >  記事  >  バックエンド開発  >  ソートされた配列に出現する数値の頻度をカウントする方法を学習する PHP

ソートされた配列に出現する数値の頻度をカウントする方法を学習する PHP

little bottle
little bottle転載
2019-04-24 17:31:212424ブラウズ

この記事の主な内容は、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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcnblogs.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。