タグ

arrayに関するastk_fのブックマーク (9)

  • JavaScriptの配列操作に役立つ13のヒントとトリック - Qiita

    以下はDuomly ( Webサイト / Twitter )による記事、13 useful JavaScript array tips and tricks you should knowの日語訳です。 Duomlyはプログラミング学習コースを提供しているWebサイトです。 ただランディングページにたいしたことが書いてないので、詳細はよくわかりません。 ここはもう少し書いておいてほしいところ。 13 useful JavaScript array tips and tricks you should know 配列はJavaScriptで最も一般的な概念のひとつであり、内部に格納されたデータを操作する手段は多数存在します。 配列はJavaScriptの最も基的なトピックであり、プログラミング学習パスの最初に学習するものだという前提のうえで、この記事ではあなたが知らないかもしれない、しか

    JavaScriptの配列操作に役立つ13のヒントとトリック - Qiita
  • Binary Indexed Tree のはなし

    Binary Indexed Tree のはなし 保坂 和宏 (東京大学理学部数学科) 第 13 回 JOI 春合宿 2014/03/19 概要  Binary Indexed Tree とは  何ができる?  何が嬉しい?  具体的な実装  応用範囲  区間に足す問題  多次元  二分探索 目標  実装できるようにする  「普通に Binary Indexed Tree を使うだけ」の部 分で詰まらないようになる  補助的な道具としてぱっと使えるように Binary Indexed Tree とは Binary Indexed Tree  Binary Indexed Tree (Fenwick Tree)  Peter M. Fenwick, "A New Data Structure for Cumulative Frequency Tables" (199

  • PHPのarray操作はどれが一番速いか - なんたらノート第三期ベータ

    なになに あまり有名ではないのでもしかしたらご存じないかもしれませんが、PHPには高速高機能なforeachってイテレーション機構が言語組み込みにあるので、わざわざarray_mapとか書かなくてもいいんですよ!!!!!— 零崎ぞぬ織 (@tadsan) 2016年5月25日 array_mapに渡していいのはcallableな値のみで、 array_map(function(){ ... とか書き始めたらそれは敗北フラグ。素直に foreach で書け!— 零崎ぞぬ織 (@tadsan) 2016年5月25日 けど配列のフェッチと新しい配列への格納でPHPオペコード増えるし、組み込み関数のほうが速いんじゃないの? 検証してみた: > php -d memory_limit=-1 array-spped-test.php Ginq + Closure: 782.2070ms x1.00 G

    PHPのarray操作はどれが一番速いか - なんたらノート第三期ベータ
  • まだPHPの配列の仕様をよく理解されていない方へ — A Day in Serenity (Reloaded) — PHP, CodeIgniter, FuelPHP, Linux or something

    PHPを使いもせずDISってる君達へ - Qiita」という記事がありました。 概ね正確な内容ですが、まだ根的にPHPの配列の仕様がわかっていないような記述が一部に見受けられました。端的なものが以下です。 今まで話したようにPHPには配列型と辞書型は曖昧なものです。 およそプログラミング言語の実装において型が曖昧ということはありえません。内部的には型は厳密です。でなければ実装できません。 ただし、自動的に型が変わることがあり、ユーザの理解が曖昧だと、言語の仕様も曖昧に感じるということです。 ということで、PHPの配列についてよく理解していないPHPユーザもまだいるでしょうから、仕様について少し記事を書くことにします。 PHPの配列とは? PHPの配列について知っておくべきことは以下ではないかと思います。 PHPの配列はarray型の1つしかない PHPの配列は順番を保持している 配列の

  • PHP で配列を走査して処理するのは、for / foreach だけじゃない

    PHP で配列の要素にアクセスして、処理を行うには、for や foreach を使うのがおなじみです。 この方法でも良いのですが、PHPには、それ以外にも配列を走査する関数やライブラリがあります。ここでは、配列を走査して処理を行う方法を見てみましょう。 サンプル仕様 このエントリで以下の配列を処理対象とします。array.phpで保存されている想定です。 <?php return [ [ 'id' => 1, 'year' => 1993, 'name' => 'Harada', ], [ 'id' => 2, 'year' => 2001, 'name' => 'Kato', ], [ 'id' => 3, 'year' => 2009, 'name' => 'Aoyama', ] ]; この配列について処理を行います。 配列内に連想配列が格納されており、nameとyearというキーを

  • javascriptの配列操作に便利なライブラリ「Underscore.js, Lo-Dash」 | SONICMOOV LAB

    こんにちは。 最近は自社サービスのHerlockを使ってJavascriptばかり書いているジョニーです。 今回は、以前の記事(【中級編】Herlockにおけるライブラリの使用 )でも紹介されているライブラリの一つであるUnderscore.jsについて紹介したいと思います。 Javascriptに限らずプログラミングするときに扱うことの多い「配列」の値の操作をするのに便利な機能がこのUnderscore.jsには数多く用意されています。 ただ説明するだけでは分かりにくい部分もあると思いますので、Underscore.jsで使えるメソッドの中から配列操作のメソッドに限定して、その中でもよく使いそうなメソッドを10個サンプルコードを交えて紹介したいと思います。 またUnderscore.jsとほぼ同じ使い方が出来るLo-dashについても少しだけ説明します。 目次 Underscore.js

    javascriptの配列操作に便利なライブラリ「Underscore.js, Lo-Dash」 | SONICMOOV LAB
  • JavaScript 1.6, Array.indexOfを下位互換実装する

    JavaScript 1.6から追加されたArrayのindexOf。 配列の中に要素が存在するかを調べる関数です。 見つからない時は -1 を返します。 見つかるとその要素の添え字を返します。 配列の中を走査するのに大変便利です。 しかし実装していないブラウザも存在するため、下位実装を担保して使わないとエラーになってしまいます。 MDNに解決策がありました。 Array indexOf method 判定の所を変えただけで中のコードはそのまま使用しています。 if (typeof Array.prototype.indexOf !== "function") { // from MDN Array.prototype.indexOf = function (searchElement /*, fromIndex */ ) { "use strict"; if (this == null)

    JavaScript 1.6, Array.indexOfを下位互換実装する
  • 【Javascript】配列の順序のランダム入れ替え at softelメモ

    問題 phpだと shuffle($array)で配列の内容をランダムな順序に入れ替えられるじゃないですか。 Javascriptでも配列の要素のランダム入れ替えってできる? [0,1,2,3,4,5,6,7,8,9] → [4,6,8,0,9,3,7,1,2] のような感じ。 答え shuffle()関数で配列の要素をシャッフルできるのは、便利機能満載、関数の塊のphpならではの風景。 JavascriptのArrayオブジェクトにshuffleはない。実装方法も考えて自分で作る必要がある。 乱数で重みをつけて並べ替える方法 var x = [0,1,2,3,4,5,6,7,8,9]; //配列xの各要素に乱数で重みをつける for (var i = 0, l = x.length; i < l; ++i) { x[i] = [x[i], Math.random()]; } //配列xを

    【Javascript】配列の順序のランダム入れ替え at softelメモ
  • 情報系修士にもわかるダブル配列 - アスペ日記

    最近話題の「日本語入力を支える技術」を途中まで読んだ。 3章がものすごく気合いが入っている。 trie(トライ)というデータ構造の2つの実装、「ダブル配列」と「LOUDS」について詳しく説明がされている。 ダブル配列については、ぼくは以前論文を読んで勉強しようとしたのだが、その時は難しくてあきらめた覚えがある。しかし、このの説明を読むことで理解ができた。 ありがたい。 感銘を受けたので、このを教材に友達と2人勉強会をした。 この2人勉強会というのは、ぼくが復習を兼ねて友達に教えるというのがだいたいのスタイル。 しかし、いざやってみるといろいろと難しい。 次のようなところでひっかかるようだ。 例のサイズが小さく、イメージを喚起するのが難しい。 最初の図のノード番号と、最終的なダブル配列上の位置が異なるため、混乱する。 単語終端について言及がないので、どのノードが単語を表しているかがわから

    情報系修士にもわかるダブル配列 - アスペ日記
  • 1