タグ

配列に関するastk_fのブックマーク (8)

  • PHPの連想配列は常にin_arrayより速いのか - hnwの日記

    プログラムを書いていると、入力値が辞書に含まれているかを調べたいようなことがあります。たとえば、ユーザーに都道府県名を入力させて、それが正しい都道府県名であるかどうかを調べたい、というようなことがあるかもしれません。 このような内容をPHPで書く際、キーに都道府県名を持つような連想配列を作る習慣がある人は多いはずです。これは典型的な連想配列の使い方といえるでしょう。 <?php $prefs = array( "北海道" => true, "青森" => true, // ... "沖縄" => true, ); if (isset($prefs[$input])) { // 都道府県名が正しい時の処理 } 一方で、in_array関数を使うやり方も考えられます。 <?php $prefs = array( "北海道", "青森", // ... "沖縄", ); if (in_array

    PHPの連想配列は常にin_arrayより速いのか - hnwの日記
  • JavaScriptの配列のパターン

    JavaScriptの配列をどう解説するかを考えていて、配列って普段どういう風に使ってるけ?みたいなことを書き出してみました。 Arrayオブジェクト · Issue #49 · asciidwango/js-primer 皆さんは配列をどう使いますか? 追記: 次のページでこの記事をブラッシュアップした話をhttps://jsprimer.net/で公開しています。 配列 · JavaScriptの入門書 #jsprimer 配列の作成 配列の作成には配列リテラル([])を使います。 配列リテラルには初期値も指定できます。 var emptyArray = []; // 空の配列を作成 var array = [1, 2, 3]; // 値をもった配列を作成 Arrayオブジェクトをnew演算子でインスタンス化する方法は基的には使いません。 こちらは配列リテラルとは異なり、初期値ではな

    JavaScriptの配列のパターン
  • 動的配列について – JavaのLinkedListとArrayListを分析・比較する | POSTD

    私はSkienaの『Algorithm Design Manual』 (訳注:『アルゴリズム設計マニュアル』 上巻 ・ 下巻 ) を読んでいました。ところでこのは素晴らしいで、連結リストと配列についてこんな比較をしていました(chapter 3.1.3)。 連結リストが静的配列に勝る相対的な長所には以下のものがあります。: • メモリが当にいっぱいにならない限り、連結構造にオーバーフローが生じない。 • 連続的な(配列)リストに比べて、挿入と削除が単純である。 • 大きなレコードを扱う場合、要素自体を動かすよりもポインタを動かすほうが容易かつ高速である。 一方で、配列の相対的な長所には以下のものがあります。 • 連結構造には、ポインタのフィールドを格納するための余計な領域が必要となる。 • 連結リストでは、要素に対する効率的なランダムアクセスができない。 • 配列は、ランダムなポイン

    動的配列について – JavaのLinkedListとArrayListを分析・比較する | POSTD
  • https://ryoasai.hatenadiary.org/entry/20110321/1300696942

  • AndroidのSparseArrayは本当に速いのか測定してみた

    前回のエントリで紹介したBundleSaverを作成する際に、SparseArrayというクラスの存在を知りました。 SparseArrayは、Android向けにつくられたパフォーマンスに優れたHashMap代用とのことで、その使い方と気になる性能について調べてみました。 実際に測定することでメリットやデメリットがわかったので、ご紹介します。 SparseArrayってなぁに? どう使うの? HashMap と SparseArray の性能比較 考察 まとめ 参考(計測に利用したクラス) 1. SparseArrayってなぁに? SparseArrayは、キーにintを利用することを前提としたHashMapだと考えると分かりやすいかと思います。 (Integerではなく、intです。) また、SparseArrayでは、値にObject型を格納できますが、値がint, booleanの

    AndroidのSparseArrayは本当に速いのか測定してみた
  • Androidで様々な配列をリソースとして定義する - Hacking My Way 〜 itogのhack日記

    Androidでは文字列などのリソースをxmlで定義することができる。xmlで定義しておくとディレクトリ名のポストフィックスを利用して(valuesとvalues-jaなど)簡単に多言語対応できるのが便利。 このリソースファイルでは文字列だけでなく、配列も定義できるのでコードの外に出せるものはできるだけxmlに書き出しましょう。 下記、resourceの記述方法とjavaからの参照方法。string, integerはそれぞれ専用のタグ名、アクセスメソッドがある。その他のリソースはで定義しTypedArrayで受ける。 文字列配列 .xml <string-array name="sample_names"> <item>foo</item> <item>bar</item> <item>baz</item> </string-array> java String[] names = ge

    Androidで様々な配列をリソースとして定義する - Hacking My Way 〜 itogのhack日記
  • Adobe Flash Platform * Array クラスの拡張

    Array クラスはコアクラスとしては珍しく final 指定されていないため、Array のサブクラスを独自に定義できます。 このセクションでは、Array のサブクラスを作成する方法について例を示し、その際に発生すると考えられる問題について説明します。 前述したとおり ActionScript の配列には型がありませんが、Array のサブクラスを定義すれば、特定のデータ型の要素だけを格納する配列を作成できるようになります。 以下のセクションの例では、Array のサブクラスとして、第 1 パラメーターに指定されているデータ型の要素だけを格納する TypedArray というクラスを定義します。 TypedArray クラスは、Array クラスの拡張方法の例として示したにすぎず、いくつかの理由で運用目的には適さない場合があります。 第 1 に、コンパイル時ではなく、実行時に型チェック

  • JavaScriptで配列をLINQにより処理できるライブラリ「linq.js」を利用するには? - @IT

    ちなみに、2つ目の<script>要素内に記述されているのは、最もシンプルなlinq.jsを用いたJavaScriptコードの例である。EnumerableオブジェクトのFromメソッドのパラメータにより配列データを受け取り、ToArrayメソッドにより配列オブジェクトに変換し、元の配列のコピーを作成している。なお、linq.jsが提供する関数を稿では「メソッド」と呼んでいる。 ファイル「linq.js」はライブラリ体で、これを参照することでlinq.jsを利用できる。また、ファイル容量を削減したい場合は「linq.js」の代わりに「linq.min.js」(=JavaScriptコードが圧縮されたもの)を参照してもよい。なお、Visual Studioを利用している場合は、同一ディレクトリに「linq-vsdoc.js」も配置することで、IntelliSenseによる入力補完を働かせ

  • 1