ソートされた 2 つの配列をマージする
質問: 2 つのソートされた配列 A と B があります。配列 A の残りのスペースは、B を収容するのにちょうど十分です。B のすべての数値を A に挿入し、すべての数値がソートされる関数を実装してください。
多くの人の最初のアイデアは単純に挿入することですが、これは十分に暴力的です。適切な位置を見つけたら、次のすべての要素を移動して、少しのスペースを埋めます。この種のアプローチは最も効率的ではありません。
逆を行うよりも、A と B の数値を末尾から比較し、大きい方の数値を A の末尾にコピーする方が良い方法です。
この解決策は、文字列内のスペースを「%20」に置き換える場合にも適用できます (ネットワーク プログラミングでは、URL にスペースや「#」などが含まれる場合があります)。サーバー側で正しく解析されないため、変換する必要があります。変換ルールは、「%」の後に ASCII コードの 2 桁の 16 進表現を追加することです。たとえば、スペースの ASCII コードは 32 です。 16 進数で 20、つまり %20 に変換します) を先頭から末尾まで走査すると、文字列の移動回数が多くなります。最初に、文字列のメモリを増やすように適用し、最後からコピーを開始し、スペースが見つかった場合は置換します。これにより、移動の数を効果的に減らすことができます。
配列を結合するコードは次のとおりです:
<?php /* $data1 数组A $data2 数组B $num1 数组A的有效元素个数 */ function merge(&$data1,$data2,$num1) { $total=count($data1); $num2=count($data2); while($num1>0&&$num2>0) { if($data1[$num1-1]>$data2[$num2-1]) { $data1[$total-1]=$data1[$num1-1]; $total--; $num1--; } else { $data1[$total-1]=$data2[$num2-1]; $total--; $num2--; } } if($num2>0) { while($total>0&&$num2>0) { $data1[$total-1]=$data2[$num2-1]; $total--; $num2--; } } } $a=array(1,3,5,7,9,0,0,0,0,0); $b=array(2,4,6,8,10); merge($a,$b,5); print_r($a);
著作権表示: この記事はブロガーによるオリジナルの記事であり、ブロガーの許可なく複製することはできません。
上記は、内容の側面も含めて 2 つの順序付けされた配列のマージを紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









AMPコインとは何ですか? AMP トークンは、Synereo プラットフォームの主要取引通貨として 2015 年に Synereo チームによって作成されました。 AMP トークンは、複数の機能と用途を通じてユーザーに優れたデジタル経済体験を提供することを目的としています。 AMP トークンの目的 AMP トークンには、Synereo プラットフォームで複数の役割と機能があります。まず、プラットフォームの暗号通貨報酬システムの一部として、ユーザーはコンテンツを共有および宣伝することで AMP 報酬を獲得できます。これは、ユーザーがプラットフォームのアクティビティにより積極的に参加することを促すメカニズムです。 AMP トークンは、Synereo プラットフォームでコンテンツを宣伝および配布するために使用することもできます。ユーザーは、AMP トークンを使用して、より多くの視聴者に視聴して共有してもらうことで、プラットフォーム上でのコンテンツの可視性を高めることができます。

データ フォルダーには、ソフトウェア設定やインストール パッケージなどのシステム データとプログラム データが含まれています。データ フォルダー内の各フォルダーは、データ ファイルがファイル名データを参照しているか拡張子を参照しているかに関係なく、異なる種類のデータ ストレージ フォルダーを表します。 , これらはすべて、システムまたはプログラムによってカスタマイズされたデータ ファイルです。データは、データ ストレージのためのバックアップ ファイルです。通常、meidaplayer、メモ帳、または Word で開くことができます。

mysql ロード データの文字化けの解決策: 1. 文字化けしている SQL ステートメントを見つけます; 2. ステートメントを「LOAD DATA LOCAL INFILE "employee.txt" INTO TABLE EMPLOYEE Character set utf8;」に変更します。

違いは次のとおりです: 1. 通常、xdata は独立変数を指しますが、data はデータ セット全体を指します。2. xdata は主にデータ分析モデルの確立に使用され、data はデータ分析と統計に使用されます。3. xdata は通常、使用されます。回帰分析、分散分析、予測モデリングの場合、さまざまな統計手法を使用してデータを分析できます; 4. xdata には通常、データの前処理が必要であり、データには完全な元のデータが含まれる場合があります。

Humane Ai Pin の発売直後、痛烈なレビューにより、当初宣伝されていた機能のほとんどが適切に動作しないか単に欠落しており、バッテリー寿命が短かったため、この AI ガジェットは市場に出す準備ができていなかったことが明らかになりました。

誰もが、そしてその叔母は、水増しされた利益率とマーケティング上の誇大宣伝を求めて AI 列車に飛び乗っているようだ。この AI 誇大広告の代表的な例として、AMD の最近の Ryzen ブランド変更を見てください。 RAND が実施した最近の研究では、次のことが判明しました。

基幹業務データベースで、バージョンはMySQL8.34 Community Server Editionです。このデータベース サーバーのエラー ログは、開始以来非常に急速に増加し (次の図を参照)、24 時間ごとに容量が 10 G を超えることもあります。障害アラームが発生し、ビジネスへの通常のアクセスは影響を受けなかったため、関係者は MySQL サービスを再起動することを許可されませんでした。この状況を考慮して、これらのログを毎晩決まった時間にクリーンアップする自動スケジュール タスクを設定する必要がありました。特定の操作については、システム コマンド ラインで「crontab -e」を実行し、次のテキスト ラインを追加します: 0001***echo>/data/mysql8/data/mysql_db/mysql.log 保存して編集モードを終了します。

いいえ、vue コンポーネント内のデータは関数である必要があります。 Vue のコンポーネントは再利用するために使用されますが、データの再利用を防ぐために関数として定義されます。 vueコンポーネント内のデータデータは相互に影響を及ぼさないように分離し、コンポーネントを再利用するたびにデータデータを一度コピーし、その後、再利用した場所でコンポーネント内のデータデータを変更する場合、再利用したローカルコンポーネントのデータデータに影響を与えない場合は、data 関数を通じてコンポーネントの状態としてオブジェクトを返す必要があります。
