タグ

配列に関するmfhamのブックマーク (6)

  • いやなブログ: 配列操作の比較表: Ruby, Python, JavaScript, Perl, C++

    配列操作の比較表: Ruby, Python, JavaScript, Perl, C++ プログラムを書いていると、他のプログラミング言語の記憶とごっちゃになって、「配列の後ろに要素を追加するのは push だっけ、 append だっけ」などと混乱することがあります。特に Ruby, Python, JavaScript はコードの書き方が似ているので、この問題が起きがちです。 そこで、備忘録として、 Ruby, Python, JavaScript, Perl, C++ の配列操作の比較表を作りました。一番慣れている Ruby を基準にしています。間違いなどがあったらご指摘いただけると助かります。他の言語のもあるといいなあ。 Ruby (Array) Python (list) JavaScript (Array) Perl (@) C++ (std::vector)

    mfham
    mfham 2014/02/17
  • 配列内の重複しているデータを削除して(1つにまとめて)取り出す。[grep] - Leilaのブログ

    my @array = ('l', 'e', 'i', 'l', 'a'); my %count; @array = grep( !$count{$_}++, @array ) ; print @array; ⇒出力は『leia』 なんとなーくやってる事は解るけれど、 見ただけだとちゃんと理解できない。。 grepと !$count{$_}++ の意味がよく解らないの。 という訳で、少し分解。 = = = = = = = = @test = ('dummy', 'test', 'ddummyy') ; @array = grep(/dummy/, @test) ; grepは真偽を判断して、真の値のみを返す。 ↑の場合は、@testの要素を1つずつ『dummy』と比較して 『dummy』が含まれていたら「真」、含まれていなかったら「偽」を返す。 ⇒結果、@arrayには「真」のデータだけ返

    配列内の重複しているデータを削除して(1つにまとめて)取り出す。[grep] - Leilaのブログ
  • リファレンスの使い方をマスターしよう - Perl入門ゼミ

    Perl › here リファレンスとはデータを指し示すものを表現します。C言語のポインタのようなものだと考えると理解しやすいです。 配列のリファレンス 配列のリファレンスについて解説していきます。 配列 配列の作成です。 my @nums = (1, 2, 3); 配列のリファレンスの作成 配列のリファレンスの作成です。リファレンスは「\」記号を使って作成します。 my @nums = (1, 2, 3); my $nums = \@nums; 「リファレンス」とは「指すもの」を意味します。$numsは@numsを指しています。 $nums ---> @nums 無名配列のリファレンスの作成 無名配列のリファレンスの作成です。「[]」は無名配列生成子と呼ばれます。 my $nums = [1, 2, 3]; $numsは、名前を持たない「(1, 2, 3)」という配列を指し示しています。

    リファレンスの使い方をマスターしよう - Perl入門ゼミ
  • 引数に複数の配列を指定

    perlの場合,引数は配列@_を使用してサブプログラムへ渡ります.したがって,サブプログラムf0に3個のスカラ値を渡すプログラムは以下のようになります. #!/usr/bin/perl -w use strict; sub f0{ my @arr=@_; print "f0: @arr\n"; #print "f0: @_\n";でも同じ } f0(1,2,3); 3個のスカラ値を渡す上記プログラムは,3個のスカラ値からなる配列1個を渡す以下のプログラムと同じです. #!/usr/bin/perl -w use strict; sub f0{ my @arr=@_; print "f0: @arr\n"; } my @arr=(1,2,3); f0(@arr); 複数の配列を引数として渡す場合,困ったことになります.つまり,こういうプログラムです. #!/usr/bin/perl -w u

  • 【CGI・Perl】ハッシュの値でソート(並べ替え)する

    CGI・Perl例文集 CGI(Perl)のサンプルプログラムをコピー&ペーストで使える便利集! カテゴリー:ハッシュ(連想配列)  ハッシュの値でソート(並べ替え)する ハッシュのキーでソートするのは、さほど難しくないが、値で並べ替えるにはどうすればよいだろう?同様にsort関数を用いれば良い。 ;# ;#ハッシュを値でソートして表示 ;# #------------------------------# #初期化する #------------------------------# %hash = ( 'A' => '1_オレンジ' , 'B' => '4_りんご' , 'C' => '2_マスカット' , 'D' => '3_バナナ' ); #------------------------------# #値で並べ替えて表示 #---------------------------

  • [Perl] 2つの配列の積集合、和集合、差集合を得る: 開発(環境構築)メモ

    Perlは問題点の多い言語と言われますが、やはり実用性は当に高いな、と思う今日このごろ。大きなプログラムを書いても遅くならないし。 さて、2つの配列の積集合(共通する要素)、和集合(いずれか一方または両方に含まれる要素)、差集合(一方にのみ含まれる要素)を求めるには、List::Compare が便利みたいなので試してみた。 #!/usr/bin/perl use List::Compare; # 比較する二つの配列 my @list1 = ('a', 'b', 'c'); my @list2 = ('b', 'c', 'd'); my $lc = List::Compare->new(\@list1, \@list2); # 積集合 (@list1, @list2 両方の配列に含まれる要素) my @intersection = $lc->get_intersection; print

  • 1