問題タブ [flatten]

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.

0 投票する
7 に答える
68951 参照

php - 単一要素配列の配列を 1 つの次元配列に変換します

私はこの種の配列を持っています:

これを一次元配列に変換する必要があります。どうやってやるの?

例えばこんな..

この配列変換には、php 組み込み機能を使用できますか?

0 投票する
1 に答える
247 参照

layer - 画像レイヤーの平坦化

レイヤーをサポートする基本的な画像編集ツールに取り組んでおり、レイヤーを単一の画像にマージする方法を知る必要があります。明らかに、ピクセルにアルファ値がない場合は、上にある方が勝ちますが、ピクセルにアルファ値がある場合にどうすればよいかわかりません。そこで質問があります: RGBA 値を使用して表現された 2 つ (またはそれ以上) のピクセルが与えられた場合、このコンテキスト (レイヤー) でそれらを単一のピクセルにマージするにはどうすればよいですか?

ティア

0 投票する
2 に答える
10526 参照

arrays - Labview で任意の次元の配列を平坦化 (1D に変形) する方法

A を任意の次元 (私の場合は 2 または 3) の配列とします。次元数を事前に知らなくても、この配列を平坦化 (1D に変形) するにはどうすればよいですか?

次元数がわかっていれば、(「Array Size」関数の組み合わせを使用して) 要素の総数を簡単に取得し、この数値を使用して A を 1D に変形できます。残念ながら、「配列サイズ」関数自体は、要素数が次元数と等しい配列を返すため、最初の問題に戻ります。

3D 配列 (私が処理すると予想される配列の最も一般的なタイプ) の要素の総数を返す関数 (VI) を作成することで、問題を「解決」しました。リシェイプ機能。問題: アルゴリズムが 2D 配列で機能するにもかかわらず、2D 配列を受け入れない! (Labview では、配列コントロールは受け入れる次元の数について厳密であるように思われますが、たとえば Matlab ではそうではありません)。

適切な解決策は、「配列サイズ」で指定された配列のすべての要素を乗算して、要素の総数をすばやく取得する簡単な方法です。これをサブ VI でラップする必要はありません。全体として、この問題を解決する簡単で効率的な方法はありませんか? それはかなり標準的なはずです..

0 投票する
7 に答える
35865 参照

list - Prolog でリストを平坦化する

Prolog を使って数日しか経っていません。私はいくつかのことを理解していますが、これは本当に私を混乱させます。

リストを受け取ってそれを平坦化する関数を書くとします。

この関数は、リストの内部構造を取り出します。

これは私がこれまでに持っているものです:

今、これは私が呼び出すときに動作します:

しかし、入力したリストがすでにフラット化されているかどうかを確認するために呼び出すと、次falseの代わりにが返されtrueます。

一方では機能するのに、他方では機能しないのはなぜですか? 非常に単純なものが欠けているように感じます。

0 投票する
2 に答える
2175 参照

php - これよりもPHP配列をフラット化またはマージする簡単な方法はありますか?

配列の配列があります。

例えば:

これを1つのアレイにフラット化/マージする最も簡単な方法は何ですか?

結果は次のようになります。

以下を実行するよりも、この結果を取得するためのより簡単で簡単な方法はありますか?

0 投票する
4 に答える
5618 参照

ocaml - Ocaml でリストを平坦化するコードのエラー

こんにちは、Ocaml でリストをフラット化しようとしています。私は初心者なので、私の間違いがばかげている場合はご容赦ください

たとえば、入力が [[1];[2;3];[4]] の場合、[1;2;3;4] になります。

私が使用しようとしているアイデアは次のとおりです 右からリストを反復処理します (fold_right を使用) with accumaltor = [] 擬似コードは次のとおりです

理論的にはアルゴリズムは正しいと思いますが、そうでない場合はお知らせください。

次に、このアルゴリズムを実装するための OCaml コードに進みます

私が得るエラーは次のエラーです: This expression has type 'a but an expression was expected of type 'a list

エラーは、match ステートメントの最後のパターンで head :: ( my_flat acc Removal ) を読み取る行で発生します。

どんな助けでも大歓迎です。

0 投票する
2 に答える
252 参照

scheme - 内側の括弧を削除すると、空のリストが実行され、短所の使用が削除されません

目標は、すべての内側の括弧を削除することです。

(flatten'(a(bc)d))は'(abcd)になります

これはRacketの私のコードです

不平を言っている

carこれは、cdr空のリストにアクセスしようとしていることを意味します。

トレースコードは単純です-一連の表示。

私が理解していないのは、なぜ最初の条件(null? slist)が空のリストをキャッチしなかったのですか?2つの再帰呼び出しがあります。空のリストをキャッチした場合は、リストである次の再帰に進みます{d}

再帰ロジックの問題は何ですか?


バージョンを更新

ロス・ラーソンが示唆したように、appendはプログラムを機能させます。しかし、学習のために、誰かが時間に余裕がある場合、私のテストの結果は、合格した基本ケース(2番目と空のリスト)のみを示しています

を呼び出すラッパー関数を書くことを考えました(cons (flatten slist) empty)

0 投票する
2 に答える
527 参照

c# - 再帰とジェネリックを使用して、階層内の選択したノードを削除します

Generic を開いた状態でオブジェクトの階層をフラット化したいT

このリンク再帰リストの平坦化

渡された IEnumerable を使用してそれを行う方法を示します。しかし、渡されたオブジェクト T をフラット化し、

そのプロパティ Children を一般的かつ再帰的に。

メソッド (選択したノード) に渡し、次のU1フラット リストを取得します。

それはどういうわけか一般的な方法で可能ですか?

0 投票する
2 に答える
261 参照

list - M 次元リストを 1 次元に変換する

私はスキームプログラミングの初心者で、マップの定義方法、追加方法などの基本的なアルゴリズムを学んでいます。

しかし、実装が見つからないアルゴリズムがあります。M 次元のリストを 1 次元に変換することについて話します。私はそれを自分で定義しようとしましたが、成功しませんでした。

まさに私が欲しいもの:

0 投票する
2 に答える
17734 参照

r - データフレームをフラット化する

私はこのネストされたデータフレームを持っています

2番目の列のすべての値のリストが必要です。

これを達成する簡単な方法はありますか?