問題タブ [bsearch]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - lfindを呼び出すときのキャスト警告なしの整数からのポインタ
私はCでベクトルを書いています。CVectorSearch関数は、ソートされている場合はbsearchを使用し、ソートされていない場合はlfindを使用します。lfindを呼び出しているときに、「割り当てによってキャストなしで整数からポインターが作成される」という警告が表示されるのはなぜですか?lfindを使用している場合でも正常に動作しているようです。
編集: search.hを含めたので、次のようになります。
ただし、プログラムはまだ正しく機能しています。
c - bsearch() を呼び出すと、提示されたプログラムがクラッシュするのはなぜですか?
「dict.txt」という名前のソートされていない辞書ファイルがあります。ファイルの単語を配列に入れることができました。使用するqsort()も正常に機能しているようです(つまり、配列はソートされています)。
bsearch() を呼び出すと問題が発生し、プログラムがクラッシュし、私の質問は次のとおりです。
なぜこうなった?
私は gcc を使用してコンパイルし、いかなる種類の IDE も使用しないため、デバッガーを持っておらず、使用方法も (まだ) 知りません。
ここに示したコードにはいくつかの問題が含まれている可能性があることは承知しています。
これは、私が c にまったく慣れておらず、私のバックグラウンドが主に Java であるためです (似ているにもかかわらず、これは欠点のようです。なぜなら、私は OO に慣れていて、c は明らかに OO ではないからです)。
アドバイスをいただければ幸いです。
implementation - 標準 C ライブラリの bsearch() 関数はどのように実装されていますか?
標準のバイナリ検索機能がどのように実装されているか知っている人はいますか?
これが原型です。
彼らが void ポインターをどのように使用したかについて、私は本当に興味があります。
c - cのbsearch関数
2 つの関数がある場合:
qsort 関数を使用して並べ替えと比較を行いますが、bsearch を使用してリストのサブセットを見つけるにはどうすればよいでしょうか。たとえば、2 つのリストがあるとします。
- (リスト A) ボブ、ジミー、リー、ジェームズ、アン
- (リスト B) ジェン、ジョン、リー、ジェームズ、ステフ
リスト B を検索して A の要素を見つけるにはどうすればよいですか?
リスト B で検索して、A にない要素を見つけることもできますか?
ありがとう。
c - qsort、bsearch を使用した C のポインターのヘルプ
使用されているポインター/配列表記の一部に問題があります。2 つのリストがあり、それらを並べ替えてから表示しようとしています。以下のコードには、宣言とは何か、またその理由について 3 つのコメントがありました。私のコードは次のようになります:
c++ - C++ クラスの実際のサイズを確認するにはどうすればよいですか?
文字列と qsort/bsearch の代わりに char 配列を使用する必要がある宿題に取り組んでいます。以下の bsearch への呼び出しでは、間違ったサイズの Entry を渡していることはわかっていますが、実際のサイズを取得する方法がわからないため、compareEntries 関数が正しいオブジェクトを見つけられません。
私が欠けているものを理解するのを手伝ってくれる人はいますか?
php - in_array()はバイナリ検索アルゴリズムを使用しますか?
ルックアップとして使用したい文字列の大きな配列があります。
私はを使用していますが、単純なループを実行しているin_array()
と思わin_array()
れます-アルゴがbsearchアルゴを使用しているかどうかを誰かが知っていますか?
c - すぐに小さい要素を返す stdlib bsearch に似たもの
同じ要素が存在しない場合はすぐに小さい要素を返し、要素が他のすべての要素よりもすでに小さい場合にのみ NULL を返す bsearch に似たものが組み込まれていますか? これには、戻り値のキーが関数の引数と同じかどうかをユーザーが確認する必要がありますが、それ自体は非常に便利です。ありがとう。
c - bsearchと検索範囲?
bsearchはダイレクトサーチにはかなり適していますが、たとえば検索範囲が必要な場合は何を使用すればよいですか?
アップデート
たとえば、aとbの間の値の範囲を見つけたい場合(a> = x <b)。
アップデート
範囲の値を等しくすることはできません。したがって、array(10,20,30)があり、「15」を見つけようとしている場合、アドレス(ポインター)を最も近い最小範囲に取得します。この例では、これは範囲(10,20)です。