このアルゴリズムの最適化されたバージョンを探しています。 ! ! !
リリース: 2016-07-25 08:48:45
プロジェクトで遭遇した問題。 大きな配列にはいくつかの小さな配列がありますが、小さな配列は繰り返される可能性があり、インターフェイスは重複しない配列構造を返す必要があります。 PHPの組み込み関数array_merge()を試しましたが、小さな配列をソートできません。これが私の使い方です。効率が非常に低いとしか言えませんが、この記事をご覧になった方で良い方法があれば教えて下さい。 :) //$hotel_setting には、繰り返される大きな配列が含まれる場合があります。 小さな配列構造は array('hotel_adt_cnt'=>'','hotel_chd_cnt'=>''); です。
- $hotel_unique = array();
- while ( 1 ) {
-
- $cmp = array_shift( $hotel_setting );
- $repeat = false;
- foreach ( $hotel_setting as $val ) {
- if ( $val[ 'hotel_adt_cnt'] == $cmp['hotel_adt_cnt'] && $val['hotel_chd_cnt'] == $cmp['hotel_chd_cnt']) {
- $repeat = true;
- Break;
- }
- }
-
- if(! $repeat)
- {
- $hotel_unique[] = $cmp;
- }
-
- if ( count( $hotel_setting ) == 0 ) {
- Break;
- }
- }
- $hotel_setting = $hotel_unique;
-
コードをコピー
|
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31