2021/11/24 「イミュータブルでゆこう」イベントの資料です。 データをリソースとイベントに場合分けして考えようという至極単純な話を1時間ほどしました。
![webエンジニアのためのはじめてのredis](https://cdn-ak-scissors.b.st-hatena.com/image/square/6b059aa4aa35389a8875a6e78a3c937746be9ef4/height=288;version=1;width=512/https%3A%2F%2Fcdn.slidesharecdn.com%2Fss_thumbnails%2Fredis-for-web-engineer-161106010935-thumbnail.jpg%3Fwidth%3D640%26height%3D640%26fit%3Dbounds)
以前にあなたのPythonを爆速にする7つの方法を書いた時に、 collections.deque とheapq.heappop の存在にも触れておくべきだと思う というご指摘を頂きましたので、新たにcollections.dequeとheapq、プラスcollections.Counterのベンチマークを追加しました。 1. heapqとdequeについて heapq まずheapqですがPythonの公式ドキュメントによると、下記のように記されています。 このモジュールではヒープキューアルゴリズムの一実装を提供しています。優先度キューアルゴリズムとしても知られています。 ヒープとは、全ての親ノードの値が、その全ての子の値以下であるようなバイナリツリーです。この実装は、全ての k に対して、ゼロから要素を数えていった際に、 heap[k] <= heap[2*k+1] かつ heap[k
最近プロコン(プログラミング・コンテスト)をはじめました。 基本的にはアルゴリズム勝負なのですが、とにかく速度を競うプロコンです。 小手先の速度チューニングもバカにできません。 何が速くて何が遅いのかはっきりさせるため、ボトルネックになりそうな操作のベンチマークを取りました。 実行環境は下記のとおりです。 python2.7.5 OS: MacOSX 11 CPU: Core i7 2GHz (4core) MEM: 16GB その1. 配列の初期化を高速化する まずはプロコンの基本中の基本、配列の初期化です。 下記7つの初期化方法を比較してみます。 空配列へappendして配列をつくる for内包表記で配列をつくる サイズ1(None)の配列を乗算してから値を代入する サイズ1(None)の配列を乗算する サイズ1(ゼロ)の配列を乗算する すべてゼロのarrayをつくる 0〜nのarra
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く