ホームページ  >  記事  >  バックエンド開発  >  PHP 配列重複排除の高速実装、PHP 配列実装_PHP チュートリアル

PHP 配列重複排除の高速実装、PHP 配列実装_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-12 09:00:27724ブラウズ

PHP 配列重複排除の高速実装、PHP 配列実装

概要

PHP の array_unique() 関数を使用すると、配列を渡して重複した値を削除し、一意の値を持つ配列を返すことができます。この関数はほとんどの場合にうまく機能します。ただし、大きな配列に対して array_unique() 関数を使用しようとすると、実行が遅くなります。

一意の配列を作成するために array_unique() 関数を使用する代わりに、より優れた高速な関数 array_flip() があります。この魔法の関数は、配列内の各要素のキーと値を交換します。キーの値は一意である必要があるため、array_unique() 関数と同じ結果が得られます。

PHP 配列重複排除をより迅速に実装する方法

リーリー

いくつかの要素を削除したため、配列は通常のシーケンスのようには見えません。たとえば、array(0=>'A',2=>'B',5=>'C'); を取得できます。場合によっては、これは問題になりませんが、配列キーを番号順に保つ必要がある場合は、1 つまたは 2 つの方法を使用して、キー値の順序が崩れる問題を解決できます。

array_merge を使用して配列キーを修正します

array_flip を追加した後の関数は、配列のキー値を並べ替えて、0、1、2、3... などの通常のシーケンスに戻します。 リーリー


2 番目の方法、array_keys を使用する


配列キー値を修復するこの方法は、array_merge() 関数を使用するよりもわずかに高速であることに注意してください。最後のステップで array_keys() 関数を使用することもできます (この関数は反転された値を返します)。次に、配列内の値を反転すると、キーが順番に作成されます。

リーリー

結論


非常に簡単で、大規模な配列で array_unique 関数を使用する場合と比較して、パフォーマンスが効果的に向上します。


興味があるかもしれない記事:

    PHP 2次元配列重複排除問題の分析
  • PHP 配列重複排除関数コード
  • php 3次元配列重複排除(サンプルコード)
  • php 配列重複排除の例と分析
  • php配列の重複排除データの例
  • php バブルソート、クイックソート、クイック検索、2次元配列の重複排除の例共有
  • php 2次元配列のマージと重複排除の方法

http://www.bkjia.com/PHPjc/1093707.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/1093707.html技術記事 PHP 配列重複排除の高速実装 PHP 配列実装の概要. PHP の array_unique() 関数を使用すると、配列を渡し、重複した値を削除して一意の値を返すことができます。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。