タグ

algorithmに関するrightgo09のブックマーク (2)

  • Optimization of sort() - Islands in the byte stream (legacy)

    Perlの最適化器はかなり頑張ってsort()の最適化を試みている。具体的には,配列をその場で直接ソートする場合,数値または整数でソートする場合,ソートブロックの$aと$bを単純に入れ替えた場合において,最適化された高速なバージョンが使われる。 以下はすべて5.10.0で確認した。 配列を直接ソートする場合 ソート後のリストを元の配列に代入するケース(たとえば"@array = sort @array")では,sort()に渡された配列を直接並び替えるため,メモリと速度の両方で勝る。 確認コード: $ perl -MO=Concise,-exec -e '@a=sort@a' # ... 7 <@> sort lK/INPLACE # ... ソートオペレータにおける「INPLACE」というフラグがこの最適化の表れである。 数値でソートする場合 ソートブロックでの数値による比較(たとえば"

    Optimization of sort() - Islands in the byte stream (legacy)
  • 人材獲得作戦・4 試験問題ほか - 人生を書き換える者すらいた。

    さて試験問題です。 内容は、壁とスペースで構成された迷路が与えられたとき、スタート地点からゴール地点に至る最短経路を求めよ、というものです。 たとえば、S:スタート G:ゴール *:壁 $:解答の経路 としたとき、 ************************** *S* * * * * * * ************* * * * * ************ * * * * ************** *********** * * ** *********************** * * G * * * *********** * * * * ******* * * * * * ************************** という入力に対し、 ************************** *S* * $$$ * *$* *$$*$ ************

    人材獲得作戦・4 試験問題ほか - 人生を書き換える者すらいた。
  • 1