問題タブ [ordered-map]
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++ - std::map の検索は失敗しますが、手動スキャンでマップ内の要素を検索します
私は std::map とリストを使用して、要素と関連するスコアのウィンドウ処理を追跡しています。ウィンドウがいっぱいになったら、要素をウィンドウ キューからポップして、マップから削除したいと考えています。重複する可能性があるため、マップはウィンドウ内の各要素が何回検出されたかを追跡します。また、特定のウィンドウで最小値を取得し続けることができるように、順序付きマップも使用しています。
私の問題は、予期しないときに find() が end() を返すことです。マップを繰り返し処理すると、要素が存在することがわかります。map を使用する際の対数の複雑さを犠牲にしたくありません。
tl;dr: std::map は、要素がマップにないことを示しています。手動スキャンはそうであると言います。
[編集: Bryan Chen の提案によりマップが修正されました。ありがとうございました!]
python - YAML を解析し、順序付けされたマップでも行番号を取得する
YAML ファイルの特定のキーの行番号を取得する必要があります。
この回答は問題を解決しないことに注意してください。私はruamel.yamlを使用していますが、回答は順序付けられたマップでは機能しません。
その結果、私はこれを得る:
!!omap
キーを除いて、行番号へのアクセスを許可しないもの:
しかし:
確かに、data['key1']['key2]
ですstr
。
回避策を見つけました:
出力:
しかし、これは少し「汚い」ように見えます。それを行うためのより適切な方法はありますか?
編集:この回避策は汚いだけでなく、上記のような単純なケースでのみ機能し、途中でネストされたリストがあるとすぐに間違った結果をもたらします
c++ - 順序付けされたマップでのシーリング/フロア/ロウワー/ハイアーエントリの実装
カスタム オーダー マップ クラスのシーリング/フロア/ローワー/ハイアーエントリ関数を実装しようとしています。現在、2 つの構文エラーが発生しています。
- ">> ネストされたテンプレート内に > > ある必要があります"、この方法で修正しましたが、まだこのエラーが発生します。
- 「BSIterator は型に名前を付けません」。
ceilingEntry の実行方法を教えてください ( k以上の最小のキー値を持つエントリにイテレータを返すか、そのようなエントリがないかマップが空の場合は end() を返すことになっています)? コードを最小限に抑えようとしましたが、理解できることを願っています。
BT.h
BST.h
OrderedMap.h
編集:簡単にコンパイルできるようにコードを拡張しました。最小化しようとしましたが、多くの依存関係があるため、まだかなり大きいです。ほとんどのスペースはテンプレートによって占められていますが、これで問題ないことを願っています。
javascript - A JS object's property-order is not guaranteed, further investigation?
Since every JavaScript developer should know, that an object's order is not guaranteed to be the same in all circumstances, we are told to use arrays (of objects) whenever the order of children is sensible.
But every time I inspect an (unordered) object in the browser's devtools, I realize the order is exactly as I would expect it (assuming that JS objects behave like ordered maps).
When or why may the order of the properties change?
In different browsers/JS-interpreters? At different runtimes because of some memory optimizations, that I don't have any clue of?
Can anybody clarify, when the order of the object's property may change?
EDIT:
I have read the questions
- Does JavaScript Guarantee Object Property Order?
- Does ES6 introduce a well-defined order of enumeration for object properties?
But I cannot find information about when it is not safe to rely on the order.