問題タブ [decomposition]
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.
database-design - BCNF分解(データベース設計)
複数のテーブルを BCNF に分解しようとしています。最初のものは正しく分解されていると思いますが、他のものは分解できるかどうかわかりません。どんな助けでも大歓迎です
sql - PostgreSQL クエリの分解
単純な SQL クエリを分解できません。私は PostgreSQL を使用していますが、私の質問は他の RDBMS にも関連しています。
次の例を考えてみましょう。テーブル注文があり、合計金額が制限を超えた最初の注文を見つけたいと考えています。
では、問題を少し難しくしてみましょう。いくつかの述語を満たす行のみの合計金額を見つけたいと考えてください。このような述語がたくさんあり、別のバージョンのビュー first_limit_exceed を作成すると、ひどいコード重複が発生します。したがって、パラメーター化されたビューを作成し、フィルター処理された行のセットまたは述語自体を渡す方法が必要です。Postgres では、クエリ言語関数をパラメーター化されたビューとして使用できます。しかし、Postgres では、関数が行のセットでも別の関数でもない引数として取得することは許可されていません。クライアント側または plpgsql 関数で文字列補間を引き続き使用できますが、エラーが発生しやすく、テストとデバッグが困難です。何かアドバイス?
java - Javaでのスパース行列の実装と操作
スパース行列を実装し、コレスキー分解、LU分解、QR分解などの分解を実行する必要があります。
実際、密行列に対してこれを実行できるJAMAというライブラリを見つけました。
しかし、スパース行列を実装する必要があります。
誰もがスパース行列を実装した経験を共有できますか、それを実装するためのライブラリがありますか。
mysql - ヒースの定理を参照してテーブルを分解するには? [宿題]
私はヒースの定理について一般的な理解を持っていますが、この質問を理解するのに苦労しています:
次の FD があるとします。
これは、テーブルを分解 (親) して SQL を使用して複数のテーブルに変換 (分解) することを意味しますか? 上記から、結果にはフィールドを含むテーブルが含まれます。
3NF と 2NF を説明するために、新しいテーブルに推移的な依存関係がなくなったことを確認します。これが 3NF 要件の私の理解です。
ヒースの定理に関連して上記のすべてを説明するにはどうすればよいですか?
c# - C#でのタプルとアンパック割り当てのサポート?
Pythonで私は書くことができます
しかし、C#では、自分が書いていることに気づきます
Pythonic の方法は、明らかにはるかにクリーンです。C#でこれを行う方法はありますか?
matrix - Svg 行列分解
svg には、次element.getCTM()
のように返すメソッドがありますSVGMatrix
。
この行列から sx 、 sy 、および回転角度を計算したいと思います。
r - Revol R での LU 分解の異常な動作を説明できる人はいますか?
単純なマトリックス ベンチマーク テストでは、Revolution Analytics R 2.13.2
の LU 分解がマトリックス乗算よりも 5 倍近く遅いことが示されています。理論と長年の実践により、LU は の 1/3 から 2/3 の時間になるはずですA*A
。
Revo R と Matlab は、このテストに
Intel の Math Kernelを使用しています。R 2.14.1
カーネルを使用していません。すべてが 64 ビットです。
この異常は、以下の表 2 に示されています。これは、 について正規化された表 1A*A
です。他にも(明らかな)異常がありますが、LU が最も目立つ異常です。
更新: Simon Urbanek のアドバイスに従い、 ; に置き換えLUP = expand(lu(Matrix(A)));
ましたlu(A)
。Revo R列は現在
秒単位の時間
テーブルと使用されたコードを含む進行中のレポートはこちらです。
更新 2 :
行列分解のみをテストするように行列ベンチマークを変更しました。これらは、他のすべての行列アルゴリズムが構築される基盤であり、これらが不安定な場合、他のすべてのアルゴリズムも不安定になります。
新品に変えました
注:Core i7
プロセッサにはIntel のターボ ブーストが搭載されており、高い需要を感知すると、クロック レートが最大 3.5 GHz まで上がります。私の知る限り、Turbo Boost は 3 つのシステムのいずれにおいてもプログラム (マー) の制御下にありません。
これらの変更により、結果がより有用になることを願っています。
表 4 から、疑似異常が消失し、すべてのシステムが理論の予測どおりに動作することがわかります。
c# - このレポート クラスを分解する方法
私はモノリシックになる寸前のクラスを持っています (この用語を間違って使用している場合は修正してください)。これは、データを収集して集計する多数の他の関数にモデルを渡す単一の関数に由来します。他の各関数は、戻る前にコール スタックのさらに深いレベルに移動します。
これは分解する必要があるように感じます。それぞれの機能に対応するインターフェースを作ることが想像できます。
他のオプションはありますか?
これがコードレビューに移らないことを願って、クラス全体を配置して、「モノリシック」と言ったときに私が話していることを読者が理解できるようにします。
matlab - Matlabで行列(mxn)を2つの因子(mxr、rxn)に因数分解するにはどうすればよいですか?
mxn 行列 A から始めて、それを 2 つの行列 mxr と rxn に因数分解します。r は行列 A の次元より大きくてもかまいません。
nnmf は、r< min(size(A))
行列を 2 つの行列に因数分解する方法はありますか?
php - 過度に単純な関数を作成するのは悪いスタイルですか?
私はただ疑問に思っています-比較的単純なタスクのために関数(分解)を作成するのは悪いプログラミングスタイルですか?
たとえば、PHPでは、セッション、投稿、取得、およびCookieに「$_」と大文字を使用するのは面倒です。したがって、セッション変数を作成するsetSesVar('key'、'value')という関数を作成した場合、それは悪いことですか?そして、毎回その関数を呼び出すオーバーヘッドは価値がありますか?それとも無関係/自分の好みですか?
他のいくつかの例:
- c ++(およびjava)のprintLn関数
- JavascriptでのgetElementBydIdの省略形(jQueryまたは別のライブラリを使用しないと仮定)
- PHPのheader('Location:' .url)の代わりにリダイレクトする
そして、少し話題から外れた質問です。私は、より「厳密な」配列を持つ言語に慣れています。PHPでは、myArray [] ='newElement'と言うだけで、最後の購入に要素を追加できます。myArray [sizeof(myArray)]を実行する必要があるように感じますが、不必要なコードを追加するのはおそらく悪いスタイルだと思います。