タグ付けされた質問 「arrays」

配列は、それぞれが1つ以上のインデックスで識別される要素(値、変数、または参照)のコレクションで構成される、順序付けられた線形データ構造です。配列の特定のバリアントについて質問する場合は、代わりに次の関連タグを使用してください:[vector]、[arraylist]、[matrix]。このタグを使用する場合、プログラミング言語に固有の質問では、使用するプログラミング言語で質問にタグを付けます。

2
JavaScript配列のビッグO
JavaScriptの配列は、アイテムを追加したり削除したりすることで非常に簡単に変更できます。ほとんどの言語の配列は固定サイズであり、サイズを変更するには複雑な操作が必要であるという事実を多少覆っています。JavaScriptでは、パフォーマンスの低い配列コードを簡単に記述できるようです。これは質問につながります: 配列のパフォーマンスに関して、JavaScript実装から期待できるパフォーマンス(大きなO時間の複雑さに関して) 私はすべての妥当なJavaScript実装に最大で以下の大きなOがあると想定しています。 アクセス-O(1) 追加-O(n) 付加-O(n) 挿入-O(n) 削除-O(n) スワッピング-O(1) JavaScriptでは、new Array(length)構文を使用して、配列を特定のサイズに事前入力できます。(ボーナス質問:この方法で配列を作成していますO(1)またはO(n))これは従来の配列に似ており、プリサイズの配列として使用すると、O(1)を追加できます。循環バッファロジックが追加された場合、O(1)の先頭に追加できます。動的に拡張する配列が使用される場合、O(log n)は両方の平均ケースになります。 ここでの想定よりも、いくつかの点でより良いパフォーマンスを期待できますか?仕様で概説されているものはないと思いますが、実際には、すべての主要な実装が舞台裏で最適化された配列を使用している可能性があります。動的に拡張する配列または他のパフォーマンス向上アルゴリズムが機能していますか? PS 私がこれを不思議に思っているのは、いくつかの並べ替えアルゴリズムを研究しているためです。それらのほとんどは、全体的な大きなOを記述するときに、追加と削除がO(1)操作であると想定しているようです。


6
2D配列を3次元にN回コピーします(Python)
派手な2D配列を3次元にコピーしたいのですが。たとえば、(2D)numpy配列があるとします。 import numpy as np arr = np.array([[1,2],[1,2]]) # arr.shape = (2, 2) 新しい次元でN個のそのようなコピーを持つ3Dマトリックスに変換します。作用するarrN = 3と、出力は次のようになります。 new_arr = np.array([[[1,2],[1,2]],[[1,2],[1,2]],[[1,2],[1,2]]]) # new_arr.shape = (3, 2, 2)
105 python  arrays  numpy 

8
O(n)より速く配列要素のインデックスを取得
私が巨大な配列とその値を持っていると仮定します。配列の値のインデックスを取得したい。他に方法はありますArray#indexか?問題は、本当に巨大な配列を維持し、Array#index膨大な回数を呼び出す必要性から生じます。 数回試行した結果、値自体ではなくフィールドを持つ構造体を格納することで要素内にインデックスをキャッシュすると(value, index)、パフォーマンスが大幅に向上することがわかりました(20倍の勝率)。 それでも、キャッシュせずにen要素のインデックスを見つけるより便利な方法があるかどうか(または、パフォーマンスを向上させる優れたキャッシュテクニックがあるかどうか)。

16
Java:ArrayListで重複を検出しますか?
ArrayListにJavaの同じ要素が複数含まれているかどうかを検出(true / falseを返す)するにはどうすればよいですか? ありがとう、テリー 編集 「ブロック」を互いに比較するのではなく、それらの整数値を比較しているわけではないことを忘れてしまいました。各「ブロック」にはintがあり、これがそれらの違いです。「getNum」という名前のメソッド(例:table1 [0] [2] .getNum();)を呼び出して、特定のブロックのintを見つけます。

16
char配列cをクリアする
最初の要素をnullに設定すると、char配列の内容全体がクリアされると思いました。 char my_custom_data[40] = "Hello!"; my_custom_data[0] = '\0'; ただし、これは最初の要素をnullに設定するだけです。 または my_custom_data[0] = 0; memset上記の2つの例では、を使用するのではなく、すべてのデータを消去すると思いました。
104 c  arrays  char 

13
配列パラメーターのサイズがmain内と同じでないのはなぜですか?
パラメータとして送信された配列のサイズがmain内と同じではないのはなぜですか? #include <stdio.h> void PrintSize(int p_someArray[10]); int main () { int myArray[10]; printf("%d\n", sizeof(myArray)); /* As expected, 40 */ PrintSize(myArray);/* Prints 4, not 40 */ } void PrintSize(int p_someArray[10]){ printf("%d\n", sizeof(p_someArray)); }
104 c  arrays  function  sizeof 

23
2つの配列の値が同じかどうかを知る方法
私はこれら2つの配列を持っています。1つはajaxリクエストからの情報で満たされ、もう1つはユーザーがクリックしたボタンを格納します。私はこのコードを使用します(サンプル番号を入力しました): var array1 = [2, 4]; var array2 = [4, 2]; //It cames from the user button clicks, so it might be disordered. array1.sort(); //Sorts both Ajax and user info. array2.sort(); if (array1==array2) { doSomething(); }else{ doAnotherThing(); } ただしfalse、2つの配列が同じでも名前が異なる場合でも、常にが返されます。(私はこれをChromeのJS Consoleで確認しました)。では、これら2つの配列に同じものが含まれているかどうかを知る方法はありますか?なぜそれは与えるのfalseですか?最初の配列のどの値が2番目の配列にないかをどのようにして知ることができますか?


2
JavaScript空の配列を減らす
配列を減らすと、数値をゼロにしようとしていますが、関数の動作を明確に理解していません [].reduce(function(previousValue, currentValue){ return Number(previousValue) + Number(currentValue); }); 結果 TypeError: Reduce of empty array with no initial value 配列が空の場合は削減できないようです [""].reduce(function(previousValue, currentValue){ return Number(previousValue) + Number(currentValue); }); 結果 "" 配列の唯一の要素が空の文字列の場合、空の文字列を取得します

10
Firestoreで「オブジェクトの配列」を更新する方法は?
私は現在Firestoreを試していますが、「配列(別名サブドキュメント)の更新」という非常に単純なもので立ち往生しています。 私のDB構造は非常に単純です。例えば: proprietary: "John Doe", sharedWith: [ {who: "first@test.com", when:timestamp}, {who: "another@test.com", when:timestamp}, ], 私は(成功せずに)新しいレコードをshareWithオブジェクトの配列にプッシュしようとしています。 私はもう試した: // With SET firebase.firestore() .collection('proprietary') .doc(docID) .set( { sharedWith: [{ who: "third@test.com", when: new Date() }] }, { merge: true } ) // With UPDATE firebase.firestore() .collection('proprietary') .doc(docID) .update({ sharedWith: [{ who: "third@test.com", when: …

10
Javascript配列を使用してセットの差を計算する最も高速または最もエレガントな方法は何ですか?
させてA、B2つのセットになります。それらの間のセットの差(または好みに応じて)を計算する本当に高速またはエレガントな方法を探しています。タイトルが示すように、2つのセットはJavascript配列として保存および操作されます。A - BA \B ノート: Gecko固有のトリックは大丈夫です ネイティブ関数にこだわるのが好きです(ただし、高速な場合は軽量ライブラリを利用できます) 私はJS.Setを見ましたが、テストしていません(前のポイントを参照) 編集:重複する要素を含むセットに関するコメントに気付きました。「セット」と言うとき、私は数学的定義を指しています。これは、(特に)重複する要素が含まれていないことを意味します。

3
バイト配列とはどういう意味ですか?[閉まっている]
ここで何が尋ねられているのかを知るのは難しい。この質問は、あいまいで、あいまいで、不完全で、過度に広い、または修辞的であり、現在の形では合理的に回答することができません。再開できるようにこの質問を明確にするヘルプについては、ヘルプセンターに アクセスしてください。 9年前休業。 誰かが説明してもらえますか、私はコンセプトを正確に理解していません。 バイト配列とは何ですか? アプリケーション/プログラムのどこでいつ使用しますか? バイト配列を使用する利点と欠点は何ですか?


3
コピーでのNumpy配列の割り当て
例えば、我々は持っている場合はnumpy、配列をA、私たちは望んnumpy配列Bと同じ要素を持つが。 次の(下記を参照)メソッドの違いは何ですか?追加のメモリはいつ割り当てられ、いつ割り当てられませんか? B = A B[:] = A(B[:]=A[:]?と同じ) numpy.copy(B, A)
103 python  arrays  numpy 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.