並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 289件

新着順 人気順

統治法の検索結果1 - 40 件 / 289件

  • リレーショナルデータベースの仕組み (1/3) | POSTD

    リレーショナルデータベースが話題に挙がるとき、私は何かが足りないと思わずにはいられません。データベースはあらゆるところで使われており、その種類も、小規模で便利なSQLiteからパワフルなTeradataまで様々です。しかし、それがどういう仕組みで機能しているかを説明したものとなると、その数はごくわずかではないでしょうか。例えば「リレーショナルデータベース 仕組み」などで検索してみてください。ヒット数の少なさを実感できると思います。さらにそれらの記事は短いものがほとんどです。逆に、近年流行している技術(ビッグデータ、NoSQL、JavaScriptなど)を検索した場合、それらの機能を詳しく説明した記事はたくさん見つかると思います。 リレーショナルデータベースは、もはや大学の授業や研究論文、専門書などでしか扱われないような古くて退屈な技術なのでしょうか? 私は開発者として、理解していないものを

      リレーショナルデータベースの仕組み (1/3) | POSTD
    • イエメン情勢

      こんにちは、皆さんが一切興味がないであろう話をします。 2014年から今にいたるまでイエメンではずっと内戦をしています。この内戦にはサウジアラビア、UAE、イランが関与しており、現在の中東情勢を理解するためにはこの内戦の概要を掴む必要があります。なのでその話をします。 イエメンでは以下の勢力が内戦をしています。すなわち フーシ派 自称はアンサール・アッラーですが一般にフーシ派と呼ばれていますので記事でも以後フーシ派としますシーア派を信奉する集団です。よって同じくシーア派が多数であるイランとの関係が深いハディ派 スンニ派勢力です主にサウジから支援を受けていますこちらを正統政府と見做すメディアもありますです。大まかにいって国土の北西地帯をフーシ派が、南部と東部をハディ派が支配しています。イエメンは部族社会という色が濃く、各部族はそれぞれに思惑をもって活動しており、フーシ派にもハディ派にも属さな

        イエメン情勢
      • ITエンジニアなら知っておきたい、今更聞けないアルゴリズムの種類一覧 - paiza times

        Photo by Oferico 皆さんはアルゴリズムやデータ構造について勉強したことはありますか?そして、基本的なアルゴリズムについて、どのようなものがあって、どのようなときに使うとよいかといったことを説明することができますか? 仕事をしていると、プログラミング言語等の勉強や業務に忙しくて、正直アルゴリズムどころではないという場合がほとんどでしょう。しかし、いつか勉強しようと思っていたけど、基本的なアルゴリズムにどんなものがあるのかなんて今更聞けないな……ということもあるかと思います。 今回はそんな方に向けて、基本的なアルゴリズムの一部の概要に加え、アルゴリズムの勉強に役立つサイト、書籍をご紹介したいと思います。 ■アルゴリズムを学ぶ意味 例えば、ソート等については、通常はすでにソート関数があるので、自分で作らなくても済む=アルゴリズムも勉強しなくていいと思ってしまうかもしれません。しか

          ITエンジニアなら知っておきたい、今更聞けないアルゴリズムの種類一覧 - paiza times
        • ソートアルゴリズムを極める! 〜 なぜソートを学ぶのか 〜 - Qiita

          NTT データ数理システムでリサーチャーをしている大槻 (通称、けんちょん) です。 今回はソートについて記します。 0. はじめに データ構造とアルゴリズムを学ぶと一番最初に「線形探索」や「ソート」が出て来ます。これらのテーマは応用情報技術者試験などでも頻出のテーマであり、アルゴリズムの Hello World とも呼ぶべきものです。 特にソートは、 計算量の改善 ($O(n^2)$ から $O(n\log{n})$ へ) 分割統治法 ヒープ、バケットなどのデータ構造 乱択アルゴリズムの思想 といった様々なアルゴリズム技法を学ぶことができるため、大学の授業でも、アルゴリズム関連の入門書籍でも、何種類ものソートアルゴリズムが詳細に解説される傾向にあります。本記事でも、様々なソートアルゴリズムを一通り解説してみました。 しかしながら様々な種類のソートを勉強するのもよいが、「ソートの使い方」や

            ソートアルゴリズムを極める! 〜 なぜソートを学ぶのか 〜 - Qiita
          • 働きながらアメリカの大学院でCS修士号を取った - k0kubun's blog

            4年前に会社の福利厚生を使ってスタンフォードの授業を取ってみたら面白く、 働きながらでも続けられそうだなという実感を得たので、 2年後、受験を経てジョージア工科大学にリモートで通い始めた。 そして先日、ジョージア工科大学からコンピュータサイエンス修士号をいただくことができた。 画像の学位記は卒業式イベント用の非公式のもので、1~2か月すると Masterとちゃんと書いてある本物が来るらしい *1 。 After 1 year and 9 months, I graduated from Georgia Tech and got a master's degree in computer science. It was intense to be a student while working full-time, but I learned a lot. pic.twitter.com/J

              働きながらアメリカの大学院でCS修士号を取った - k0kubun's blog
            • できるだけ嘘を書かずに計算量やオーダーの説明をしようとした記事 - えびちゃんの日記

              計算量についてのお話です。対象は、プログラミング経験はあるが計算量のことを知らない初心者から、計算量のことを知っているつもりになっている中級者くらいです。 数式を見たくない人にとっては読むのが大変かもですが、深呼吸しつつ落ちついて読んでくれるとうれしいです。 それから、この記事が自分には合わないな〜と思ったときは、(別の記事を Qiita とかで検索するよりも)この記事の一番下の 参考文献 にある本を読むことをおすすめします。Amazon の試し読みで無料で読めます*1。 TL; DR 関数の増加度合いのことをオーダーと呼ぶよ 計算量は、入力サイズ(など)を受け取ってアルゴリズムの計算回数(など)を返す関数だよ その関数のオーダーについての議論がよく行われるよ オーダーを上から抑えるときは \(O\)、下から抑えるときは \(\Omega\) を使うよ オーダーを上下両方から抑えたいときは

                できるだけ嘘を書かずに計算量やオーダーの説明をしようとした記事 - えびちゃんの日記
              • ぜひ押さえておきたいコンピューターサイエンスの教科書

                僕はバイオインフォマティクスという生物と情報の融合分野で研究を行っています。東大の理学部情報科学科にいた頃は同僚のマニアックな知識に驚かされたものですが、そのような計算機専門の世界から一歩外に出ると、それが非常に希有な環境だったことに気が付きました。外の世界では、メモリとディスクの違いから、オートマトン、計算量の概念など、コンピューターサイエンスの基礎知識はあまり知られていませんでした。コンピューターサイエンスを学び始めたばかりの生物系の人と話をしているうちに、僕が学部時代に受けた教育のうち、彼らに欠けている知識についても具体的にわかるようになってきました。 バイオインフォマティクスに限らず、今後コンピュータを専門としていない人がコンピューターサイエンスについて学ぶ機会はますます多くなると思われます。そこで、これからコンピューターサイエンスを学ぼうとする人の手助けとなるように、基礎となる参

                • 30分で完全理解するTransformerの世界

                  はじめに 初めまして。ZENKIGENデータサイエンスチームのはまなすです。正式な所属はDeNAデータ本部AI技術開発部なのですが[1]、業務委託という形で今年度から深層学習系の開発等に携わっています。 深層学習界隈では、2017年に衝撃的なタイトル(Attention Is All You Need)の論文が発表されてから早5年半、元出自の機械翻訳タスクを大きく越えて、Transformer関連の技術が様々な領域で用いられる汎用アーキテクチャとして目覚ましく発展し続けています。 今回はそんなTransformerが現時点までにどのように活用されてきたか、また、どのように工夫されてきたかをざっくりと俯瞰し、流れをおさらいする目的の記事になります。本記事の大枠は、2021年時点でのサーベイ論文である A Survey of Transformers に倣いつつ、適宜、2023年2月上旬現在ま

                    30分で完全理解するTransformerの世界
                  • テックリードとして入社してからやったことをまとめてみた。 - Qiita

                    現在の会社にテックリード(1人目の正社員エンジニア)として入社して、2年間やってきたことを書いています。 エンジニア二年目でテックリードとして試行錯誤してきて、自分の振り返りもしたいという思いから記事を書きました。 (前提として、シード期のスタートアップで実行してきたことです。) 入社時のチーム課題 入社当時は、2週間単位のスプリントでスクラムを回してましたが、全員が業務委託だったこともあり、完全な内製化を進める必要があり、主な課題は以下でした。 継続的リリースが困難な状態になっており、それを解消することが急務 社内にエンジニアがいなかったので、開発組織体制づくりが必要だった。 ウォーターフォール寄りのリリースが多く、継続的にリリースする文化がなかった。 リファクタリングやテストコードが不十分だった。 改善したこと Zenhubを導入 それまでは、GitHub Projectで進捗管理をし

                      テックリードとして入社してからやったことをまとめてみた。 - Qiita
                    • アルゴリズムを学ぼう

                      関連サイト出版社による関連ページが公開されています。 アルゴリズムを学ぼう (KADOKAWA/アスキー・メディアワークス) 関連書籍本書の続編『続・アルゴリズムを学ぼう』も好評発売中です。 内容紹介本書のテーマは、ガチのアルゴリズムとデータ構造、そして計算量です。 いや、確かに本書は女の子がいろいろでてきたり、小話が入っていたりと、ゆるふわなオーラが漂っています。しかし、あえていいましょう。それは、見かけだけである、と。 プログラミングを学ぶにあたって、アルゴリズムとデータ構造は、どの言語を用いるにしてもすべての基礎であり、避けて通ることはできない道です。アルゴリズムとデータ構造を知らずにプログラムを書くことは、無免許で車を運転するぐらいに危険な行為です。 しかし、アルゴリズムとデータ構造をきちんと理解せずに、プログラムを書いているプログラマーが多数いるのも事実です。それは、アルゴリズム

                        アルゴリズムを学ぼう
                      • コーディングインタビューの対策とその意義 (1/2) - 16bitのメモランダム

                        1.コーディングインタビューとは何か コーディングインタビュー(Coding Interview、またはProgramming Interview)とは、1時間ほどの制限時間内に小さなプログラミング問題を解かせる面接形式のことをいう。プログラマー、またはデータサイエンティストなどの採用試験として、米国を含むいくつかの国で用いられている。「物理的なホワイトボード上にプログラムを書く」という形式で実施されることが多い。「オンライン上の共有エディタで書く」といった形式のこともある。Googleなどは自社のYoutubeチャンネル動画でも説明している。 出題される問題としては、例えば、「複数の数字numbersと整数kが与えられたとき、合計がkとなる数字の組を1つ出力せよ」といったものがある。この問題は有名なので通称が付いており、Two Sumと呼ばれる。 Two Sumの一例。与えられた数値の並

                          コーディングインタビューの対策とその意義 (1/2) - 16bitのメモランダム
                        • 1/30 発売!「プログラミングコンテスト攻略のためのアルゴリズムとデータ構造」 - iwiwiの日記

                          書籍「プログラミングコンテスト攻略のためのアルゴリズムとデータ構造」が近日中に発売される予定です.会津大の渡部先生が著者で,Short Coding 本の Ozy さんと私が協力としての参加です.どうかよろしくお願いします. プログラミングコンテスト攻略のためのアルゴリズムとデータ構造 作者: 渡部有隆,Ozy(協力),秋葉拓哉(協力)出版社/メーカー: マイナビ発売日: 2015/01/30メディア: 単行本(ソフトカバー)この商品を含むブログ (4件) を見る 本書はアルゴリズムとデータ構造の入門書です.整列,探索,木構造などをはじめとする基礎的なアルゴリズムとデータ構造を初学者向けに説明します.前提とするのは基礎的なプログラミング能力のみです.コード例では C++ を用いています. これだけだと,よくある本のように思われるかもしれません.しかし,本書は非常にユニークな特徴として,オン

                            1/30 発売!「プログラミングコンテスト攻略のためのアルゴリズムとデータ構造」 - iwiwiの日記
                          • 【React/Vue.js】コンポーネント設計の(個人的)ベストプラクティス | Offers Tech Blog

                            概要 こんにちは、Offers を運営している株式会社 overflow の Software Engineer(主戦場はフロントエンド)の Kazuya です。今回は、React や Vue.js などの SPA フレームワークにおけるコンポーネント設計について紹介します。 昨今のフロントエンド開発では、コンポーネント指向での開発がスタンダート化しつつありますが、コンポーネント設計には厳格なルールが無く、どのように設計すればいいか悩む方も多いのではないでしょうか?(筆者は沼にはまりました) コンポーネントの単位はどの程度に分割すべきなのか、状態管理はどうすればいいのか、API 通信はどこですべきなのかなど、一言にコンポーネント設計と言っても考えるべき項目が多いです。チーム開発では、認識があっていないとコードが魔境になることもしばしばあると思います。(筆者の経験談より) そこで今回は、数々

                              【React/Vue.js】コンポーネント設計の(個人的)ベストプラクティス | Offers Tech Blog
                            • Pandasのメモリ削減方法を整理した - Taste of Tech Topics

                              皆さんこんにちは 機械学習チーム YAMALEXチームの@tereka114です。最近、寒いので、鍋を中心に食べて生きています。 検証段階でも、規模の大きなデータを扱う機会が増えてきて、Pandasのメモリ消費量が厳しいと感じてきたので、その削減や効率化のテクニックまとめたいと思いました。 有名なものからマイナーなものまで、思いつく限り書いてみます。 そもそもなぜ、Pandasのメモリ削減技術が必要なのか 準備 Pandasのメモリ削減 1. 型修正 2. 逐次読み込み 3. 読み込み時の型指定 4. 逐次読み込み&集約 5. 不要なものを読み込まない 6. 不要なカラム/DataFrameを消す 番外編:そもそもPandasを利用しない 最後に そもそもなぜ、Pandasのメモリ削減技術が必要なのか Pandasで扱うデータの多くのファイルはCSV,Parquet, JSON(JSONL

                                Pandasのメモリ削減方法を整理した - Taste of Tech Topics
                              • NVIDIAら、サッケード眼球運動中の盲目ポイントにシーンを微妙に回転させ物理空間より広いVR空間を歩行可能にするリダイレクトシステムを発表

                                NVIDIAら、サッケード眼球運動中の盲目ポイントにシーンを微妙に回転させ物理空間より広いVR空間を歩行可能にするリダイレクトシステムを発表 2018-03-29 NVIDIA Research、Adobe、ニューヨーク州立大学ストーニーブルック校の研究者らは、眼球が小刻みに高速で動く「サッケード(衝動性眼球運動)」を利用したVRにおけるリダイレクトウォーキング技術を発表しました。 (青の線が物理空間で移動した軌道、オレンジがVR空間で移動した軌道。両者共に同じ行動の記録。) VRリダイレクトウォーキングとは、物理空間より大きなVR空間を移動できる最大限フロアを利用する手法を指します。VRリダイレクトウォーキングは過去にも様々なアプローチで研究されており、ここでもいくつか紹介しました。 中国科学技術大学、通路が連続するVR空間において狭い物理空間で大規模な仮想空間を歩行できる新手法を論文に

                                  NVIDIAら、サッケード眼球運動中の盲目ポイントにシーンを微妙に回転させ物理空間より広いVR空間を歩行可能にするリダイレクトシステムを発表
                                • アルゴリズムコンテストの挑み方 - d.y.d.

                                  17:29 08/09/30 クロスワード 暇つぶしに "Clueless Crossword" という冊子を買ってみて意外とハマっています。 クロスワードパズルなんだけど、単語のヒントの代わりに、 各マスに1~26の数字が振ってあって同じ数字のマスには同じA~Zが入るように埋めるというもの。 「母音っぽくて二連続して語尾にも出てくるのは多分 E だろう、もしかしたら O の可能性はなくもないけど」 みたいに埋めていく。 ちょっと違うけど フラッシュであった。 20:15 08/09/28 だいちのよろい そろそろ日本に戻る前に観光するぞ月間、ということにして、ウルル(エアーズロック)に行ってきました。 もっとワイルドな感じかと思ったら、完全にリゾートのリゾートによるリゾートのための地帯になってました。 まあそんなもんか。 本日は強風のため登るの禁止とのことだったので、周りから見るだけ。

                                  • とても長い配列の上位M件だけをクイックソートより高速に取り出す - Qiita

                                    というわけで、10倍の差がでた。 当然、配列の長さやソートする長さ、また実装の方法によって性能差は変わってくるが 今回の方法は有効であるということは確認できた。 既存の記事(2015/11/09 20:22 追記) コメント欄でUnordered partial sorting にそれらしきことが書いてあると教えていただいた。 そちらでは、「上位k個を取り出す(ソートは不要)」という問題を考えている。 同様に分割統治法を用いてソートしていきながら、上位k個以内の小区間になったらその区間はソートせずに全て選択して良いとしている。 早い話が、QuickSelectによりk+1番目の要素を探してそれより上位の要素をごそっと抜き出している。 分割統治法で大雑把にソートしていきながら、不要なソートを行わないようにする という同様のアプローチである。 C++のSTLの場合(2015/11/09 22:

                                      とても長い配列の上位M件だけをクイックソートより高速に取り出す - Qiita
                                    • エラーメッセージの読み方と対処, 検索や質問の原則 - Qiita

                                      プログラミングをしている限り, エラーメッセージに遭遇するのは避けられないことだ. そこで, あなたは周りのできる人に「エラーが出ました」と言って "答え" を聞こうとするだろう. でも, もし聞ける人が誰もいなかったら? もし, 周りの誰にもわからないようなエラーにぶつかってしまったら? あなたが一人前のプログラマになるためには, 自分でエラーメッセージを読んで, 解決できるようにならなければならない. どういうエラーメッセージが出たときは何が原因で, どのように対処すれば解決するのか. その知識・経験の積み重ねこそがあなたを一人前のプログラマにするのだ. これは安直に "答え" だけを追い求めていてはいつまで経っても身に付かない. エラーメッセージの大原則 まず最初に頭に入れておくべきなのは, エラーメッセージは意味不明な暗号ではない ということだ. その実, エラーメッセージはかなり

                                        エラーメッセージの読み方と対処, 検索や質問の原則 - Qiita
                                      • A* - Wikipedia

                                        A*探索アルゴリズム A*(A-star、エースター)探索アルゴリズム(エースターたんさくアルゴリズム)は、グラフ探索アルゴリズムの一つ。 最良優先探索を拡張したZ*に、さらにf値として「現時点までの距離」g と「ゴールまでの推定値」h の和を採用したもの[1]。h は ヒューリスティック関数と呼ばれる。 概要[編集] A* アルゴリズムは、「グラフ上でスタートからゴールまでの道を見つける」というグラフ探索問題において、 ヒューリスティック関数 h(n) という探索の道標となる関数を用いて探索を行うアルゴリズムである。h は各頂点 n からゴールまでの距離のある妥当な推定値を返す関数で、解くグラフ探索問題の種類に応じてさまざまな h を設計することが出来る。 例えば、カーナビなどで用いられる単純な二次元の地図での探索では、h としてユークリッド距離 を使うことができ、この値は道に沿った実際

                                          A* - Wikipedia
                                        • 生存適者日記 - 「強者」の必勝法は常に二つ

                                          弱者を弱者にしている、唯一にして決定的な要因は、「強者を理解していない」ということ 確かに、いわゆる「強者」の立場にいる者が皆個人レベルで圧倒的なスペックを誇っているわけではないんですが、そんなことは議員のセンセイ方(特に二世三世)を見れば小学生でも感じていることではないでしょうか。 ただし、「超人」でなくとも「強者」の立場を握り続けるための「強者の必勝法」は確かに存在するのです。 古来より「帝王学」とも呼ばれてきた秘伝ですが、そのエッセンスはわずか二点に凝縮することが可能です。「強者」は決して言いたがらないこれら二つを最後に明かしておきましょう。 一つ、 「分割して統治せよ」 一つ、 「胴元たれ」 拍子抜けしました? でも基本はたったコレだけなんです。 簡単に説明しましょうか。 一つめ、「分割して統治せよ」。 聞いたことありますよね。古代ローマから春秋中国まで広く用いられてきた統治法です

                                            生存適者日記 - 「強者」の必勝法は常に二つ
                                          • nix in desertis:世界史用語集から消滅した用語ver.2019

                                            山川出版社の『世界史用語集』はほぼ毎年出版されているが,大規模な改編があった場合は改版,ミクロな改編しかなかった場合は増刷という使い分けをしている。ただし,正確に言えば改版は刷数をリセットして第1版に戻すということをやっているので,改版ではなく再出版になるのだが,まあそこは置いといて。改版になるのは学習指導要領が変わったタイミングになることが多いが,そうでなくともたまに改版している。ちなみに,第1刷のみタイトルが『世界史用語集』で,第2刷以降は『世界史用語集 改訂版』という書名になるという小ネタがある。書店では最新版以外が売っていることはまずないが,Amazon等で注文する際はタイトルと発行年をちゃんと見ないと無駄に古いものを買うことになるので注意が必要だ。たとえば現行の『世界史用語集』は2014年に刊行,『世界史用語集 改訂版』は2018年12月刊行である。 さて,その2018年12月に

                                            • デザインパターンの話 - Qiita

                                              irxground 君が再考: GoF デザインパターンといふ記事を書いてゐるので自分もちょっとコメントしてみます。 基本的に irxground 君と同意見のところは省略します。 あと、GoF の本自体は私は読んでゐません。 (GoF のパターン以外のパターンに関する意見の方が長くなってますね……。) GoF のデザインパターン 生成に関するパターン Builder そもそも builder パターンは Java の String と StringBuilder の様に可変オブジェクトと不変オブジェクトを別のクラスに設計しなければならない言語でしか基本的に役に立たないパターンであり、C++ の様にキャストだけで可変オブジェクトを不変オブジェクトに変換できる言語ではこのパターンは無用なはずである。 Java が出る前の本でこれがパターンとして挙げられてゐたといふのが俺には不思議に感じられる

                                                デザインパターンの話 - Qiita
                                              • 痛いニュース(ノ∀`):ギョーザ中毒事件に関わった中国の食品監督局長が自殺

                                                ギョーザ中毒事件に関わった中国の食品監督局長が自殺 1 名前: 飛亜特(神奈川県) 投稿日:2008/08/08(金) 16:40:03.55 ID:MZ5dfGdY0 ?PLT 中国の食品監督局長が自殺 8日付の香港紙、星島日報は中国国家品質監督検査検疫総局の食品生産監督管理局の●(=烏の右におおざと)建平局長 (42)が自殺したと伝えた。2日に建物から飛び降りた。自殺の前に司法当局が局長と接触していたとの情報もあるという。 国家品質監督検査検疫総局は食品や日用品の安全性確保や動植物の検疫などを担当。 その中で食品生産監督管理局は国内での食品の安全管理や監督、食中毒事件の調査 を担っている。中国国内で6月中旬に起きたとされるギョーザ中毒事件の対応にも 同監督管理局がかかわっていたとみられるが自殺との関係は不明。 http://sankei.jp.msn.com/world/china/0

                                                  痛いニュース(ノ∀`):ギョーザ中毒事件に関わった中国の食品監督局長が自殺
                                                • 巨大なタスクに圧倒されそうな時は“分割統治”で征服せよ ゴールまで走り続けるために有効な考え方

                                                  大きな問題も分割すればなんとかなる まつもとゆきひろ氏:次のことわざにいきましょうね。4番目は、これもことわざじゃないと言われちゃうんですが、「分割統治」という言葉です。英語だと「Divide and Conquer」。「分割して征服せよ」という感じです。大きな問題もね、分割すればなんとかなるというやつですね。 (スライドを示して)これは最近見た漫画です。巨大なタスクが存在して、圧倒されそうな気持ちになった時には、タスクを取り上げて細かく分解すると、細かく分解されたタスクは無視しやすいので、タスクは片づかなくても気分は楽になるという漫画なんですけども(笑)、実際、そういうところもあるんですよね。 非常に巨大なことをしろと言われると大変なんだけど、手に負える範囲に分割して1つ1つ話をしていくと問題を解決できるというのは、どこにおいても応用可能な原則だと思います。 クイックソートは一応現時点で

                                                    巨大なタスクに圧倒されそうな時は“分割統治”で征服せよ ゴールまで走り続けるために有効な考え方
                                                  • Rubyと大クラス主義とダックタイピング、そして名前重要 - ゆとRubyist日記

                                                    最近、Javaを勉強したりしていて、RubyがJavaとの対比で昔より客観的に見られるようになったので、Rubyの記事を書きたいと思います。自分でも消化しきれていない話なので、反論は大歓迎です。 内容は、大クラス主義とダックタイピング、そして名前重要に関してです。 大クラス主義 Rubyの考えでよく言われるものに、大クラス主義があります。例えば、RubyのArrayは配列を表すクラスです。しかし、Arrayができることは、単純に値を複数持てるだけではありません。Arrayを調べてみると、popやpushやshiftやunshiftがあります。つまり、RubyのArrayはキューやスタックとしても使えます。一方、JavaのArrayやArrayListでは、配列の要素を扱うことはできますが、そのままではキューやスタックとしては使えません。Javaでキューやスタックが使いたいのであれば、例えば

                                                      Rubyと大クラス主義とダックタイピング、そして名前重要 - ゆとRubyist日記
                                                    • 第二版が出ます!プログラミングコンテストチャレンジブック - iwiwiの日記

                                                      一昨年 9 月に初版が出て以来「蟻本」の愛称で皆様にご好評頂いていた僕と岩田 (id:wata_orz) と北川の「プログラミングコンテストチャレンジブック」ですが,お陰様で,このたび第二版が出版されます!第二版の発売日は 1/27 の予定です.よろしくお願いします. (初版の紹介記事はこちら) 改訂による追加部分は,以下になります. 4 つの新しいトピック:計算幾何,枝刈り探索,分割統治法,文字列アルゴリズム 練習問題コーナー 発展内容コーナー ページは 50 ページ増となっています. 練習問題コーナー 練習問題コーナーでは,本書で取り上げた各トピックに関連したオンラインジャッジ上の問題を紹介しています.例題を理解するだけでなく,実際に練習問題を自分で解くことで,一層の定着や応用力の増強を図ることができます. 発展内容コーナー 発展内容コーナーでは,難易度や本の性質の都合等で本書で紹介し

                                                        第二版が出ます!プログラミングコンテストチャレンジブック - iwiwiの日記
                                                      • FGOでラクシュミー・バーイーが登場して驚いた件。英国統治時代のインドとインド独立についてざっくりまとめ。|天竺奇譚

                                                        FGOでラクシュミー・バーイーが登場して驚いた件。英国統治時代のインドとインド独立についてざっくりまとめ。 なますて。天竺奇譚です。 まずはじめに。 かなり長くて雑なまとめですまない。 ちなみにこの長ったらしいメモというかまとめは、主にFGOというゲームに登場するラクシュミー・バーイーにからめた話だけど、ラクシュミー・バーイー本人やゲームについてはほとんど語ってない。ラクシュミー・バーイーが登場した歴史背景と、彼女の存在がインドに与えた影響についてざっくりとまとめたものなので。そこはすまない。 あと、ほんと雑なまとめなので、英国と東インド会社を同一に語ってたりとか、用語とかほとんど使わずほんとざっくりにしてる。英国の統治について是非を問うつもりも議論するつもりもないので、歴史オタクの人向けではないのでそこもすまない。 知らない人のために。FGOっていうのは史実や神話の登場人物が「英霊」とな

                                                          FGOでラクシュミー・バーイーが登場して驚いた件。英国統治時代のインドとインド独立についてざっくりまとめ。|天竺奇譚
                                                        • 日本に「市民社会」は存在しないのか?/『市民社会とは何か』著者、植村邦彦氏インタビュー - SYNODOS

                                                          ――本日は「市民社会」という言葉と概念、あるいは思想についてお聞きしたいと思います。この言葉の原語である〈civil society〉について、まずは教えてください。 英語で〈civil society〉という言葉が初めて使われたのは、日本で言えば安土桃山時代にあたる16世紀末のことでした。『オクスフォード英語辞典』(OED)は、英単語の語源や初出を具体的な文例で示していることで有名ですが、それによると、1594年に出版された英国教会派の神学者リチャード・フッカーの著書『教会統治法』に、この言葉が出てきます。 ところが、『教会統治法』を実際に読んでみると、この言葉が出てくるのは、じつは古代ギリシアの哲学者アリストテレスの『政治学』からの翻訳語としてなのです。その際にフッカーが使用したと思われる『政治学』のテクストは、1438年にフィレンツェの人文学者レオナルド・ブルーニが出版し、その後ヨー

                                                            日本に「市民社会」は存在しないのか?/『市民社会とは何か』著者、植村邦彦氏インタビュー - SYNODOS
                                                          • ウィンストン・チャーチル - Wikipedia

                                                            サー・ウィンストン・レナード・スペンサー・チャーチル KG, OM, CH, TD, PC, DL, FRS, Hon. RA (英語: Sir Winston Leonard Spencer Churchill、1874年11月30日 - 1965年1月24日)は、イギリスの政治家、陸軍軍人、作家。 概説[編集] サンドハースト王立陸軍士官学校で軽騎兵連隊に所属し、第二次キューバ戦争を観戦し、イギリス領インド帝国でパシュトゥーン人反乱鎮圧戦、スーダン侵攻、第二次ボーア戦争に従軍した。1900年のイギリス総選挙にオールダム選挙区から保守党候補として初当選(当時:25歳)。しかしジョゼフ・チェンバレンが保護貿易論を主張すると、自由貿易主義者として反発し保守党から自由党へ移籍した。ヘンリー・キャンベル=バナマン自由党政権が発足すると、植民地省政務次官としてイギリスに併合されたボーア人融和政策や

                                                              ウィンストン・チャーチル - Wikipedia
                                                            • 動的計画法 - Wikipedia

                                                              動的計画法(どうてきけいかくほう、英: Dynamic Programming, DP)は、計算機科学の分野において、アルゴリズムの分類の1つである。対象となる問題を複数の部分問題に分割し、部分問題の計算結果を記録しながら解いていく手法を総称してこう呼ぶ。 定義[編集] 細かくアルゴリズムが定義されているわけではなく、下記2条件を満たすアルゴリズムの総称である。 帰納的な関係の利用:より小さな問題例の解や計算結果を帰納的な関係を利用してより大きな問題例を解くのに使用する。 計算結果の記録:小さな問題例、計算結果から記録し、同じ計算を何度も行うことを避ける。帰納的な関係での参照を効率よく行うために、計算結果は整数、文字やその組みなどを見出しにして管理される。 概要[編集] 「動的計画法(dynamic programming)」という言葉は1940年代にリチャード・E・ベルマンが最初に使いは

                                                                動的計画法 - Wikipedia
                                                              • 【React】「困難は分割せよ」―― 複雑な画面は小さな機能に分けて実装しよう。 - Qiita

                                                                「Divide and Conquer / 分割統治法」 という解法(アルゴリズムの話でよく出てきますね)は、「困難は分割せよ」 として知られる、デカルトが『方法序説』で提唱した思考法が元になっています1。 第二は、わたしが検討する難問の一つ一つを、できるだけ多くの、しかも問題をよりよく解くために必要なだけの小部分に分割すること。 ―― 岩波文庫 『方法序説』 デカルト著 谷川多佳子訳 同様に、React で多機能で複雑な画面を作りたい時、それを小さな機能の集まりと捉えて、それぞれをコンポーネントにすることで、開発がラクになることがあります。 フロントエンドの複雑さや、デザインのための Atomic Design という考え方の影響、または /scripts のように分ける習慣の名残なのか、フロントエンド開発者には、《再利用のためにコンポーネントを作る》という思い込みがあります。(もしくは

                                                                  【React】「困難は分割せよ」―― 複雑な画面は小さな機能に分けて実装しよう。 - Qiita
                                                                • サポートベクターマシン - Wikipedia

                                                                  サポートベクターマシン(英: support-vector machine, SVM)は、教師あり学習を用いるパターン認識モデルの1つである。分類や回帰へ適用できる。1963年にウラジミール・ヴァプニク(英語版)とAlexey Ya. Chervonenkisが線形サポートベクターマシンを発表し[1]、1992年にBernhard E. Boser、Isabelle M. Guyon、ウラジミール・ヴァプニクが非線形へと拡張した。 サポートベクターマシンは、現在知られている手法の中でも認識性能が優れた学習モデルの1つである。サポートベクターマシンが優れた認識性能を発揮することができる理由は、未学習データに対して高い識別性能を得るための工夫があるためである。 基本的な考え方[編集] サポートベクターマシンは、線形入力素子を利用して2クラスのパターン識別器を構成する手法である。訓練サンプルから

                                                                    サポートベクターマシン - Wikipedia
                                                                  • ChatGPTのAPIを3ヶ月使ってわかってきた、良い出力を得るための指針 - Qiita

                                                                    ChatGPT APIリリースの衝撃から(およそ)3ヶ月。 私が所属する旅行系スタートアップのAVA Intelligenceでは、APIリリース以降、ミッション"Discover the Best For You"を実現するための重要技術と位置付け、様々に活用してきました。 中でも、自然言語で旅行について聞くことができるLINEボットがご好評をいただいています。 ▼AVA Travelの公式LINE 3ヶ月間、ChatGPTのAPIを使って目的を達成する方法を模索する中で、重要だと考えることを整理しました。 指針1.分割して各個撃破する あなたはAIでどのような問題を解決しようとしていますか? 大抵の解くべき問題は、複雑で難しいです。 大きくて難しい問題を分割し、解けるサイズに分けて、扱いやすくすることは、ChatGPTを使う開発において大きな効果を発揮します。 課題を分割することで、A

                                                                      ChatGPTのAPIを3ヶ月使ってわかってきた、良い出力を得るための指針 - Qiita
                                                                    • 政教分離原則 - Wikipedia

                                                                      融合型(国教制度) マルタ - カトリック(1964年憲法 第2条) コスタリカ - カトリック (コスタリカ憲法 第75条) モナコ - カトリック (モナコ憲法 第9条) イングランド - イングランド国教会(聖公会) スコットランド - 長老派教会 アイルランド - アイルランド教会 ウェールズ - ウェールズ教会 デンマーク - ルター派教会(1953年憲法 第4条) ノルウェー - ルター派教会(1814年憲法 第2条) アイスランド - ルター派教会(1944年憲法 第62条) フィンランド - ルター派教会、正教会(フィンランド正教会) ギリシア - 正教会(ギリシャ正教会) チュニジア - イスラム教 サウジアラビア - イスラム教ワッハーブ派 基本統治法第1条で憲法はクルアーンおよびスンナであると規定 エジプト - イスラム教、ただし宗教政党は禁止されている。 スリランカ

                                                                        政教分離原則 - Wikipedia
                                                                      • クイックソート - Wikipedia

                                                                        クイックソート(英: quicksort)は、1960年にアントニー・ホーアが開発したソートのアルゴリズム。分割統治法の一種。 個のデータをソートする際の最良計算量および平均計算量は (ランダウの記号)である。他のソート法と比べて一般的に最も高速だと言われている[2]が、対象のデータの並びやデータの数によっては必ずしも速いわけではなく、最悪の計算量はである。安定ソートではない。 アルゴリズム[編集] クイックソートは以下の手順で行われる。 ピボットの選択:適当な値(ピボット(英語版)という)を境界値として選択する 配列の分割:ピボット未満の要素を配列の先頭側に集め、ピボット未満の要素のみを含む区間とそれ以外に分割する 再帰:分割された区間に対し、再びピボットの選択と分割を行う ソート終了:分割区間が整列済みなら再帰を打ち切る 配列の分割方法の一例として、以下のようなものが考えられる: 配列

                                                                          クイックソート - Wikipedia
                                                                        • ソート - Wikipedia

                                                                          ソート (英: sort) は、データの集合を一定の規則に従って並べること[1]。日本語では整列(せいれつ)、並べ替え(ならべかえ)、分類(ぶんるい)などと訳される[1]。 主に配列や連結リストのような、リストデータ構造に分類されるコレクション(コンテナ)に格納されている要素データを、全順序関係によって並べ替えることを指す。また、単に「ソート」といった場合、値の小さい方から大きい方へ順に並べる昇順(しょうじゅん、英: ascending order)を指すことが多い。その反対に値を大きい方から小さい方へ順に並べることを降順(こうじゅん、英: descending order)という。 対象となるコレクションのデータ構造や必要とされる出力、また時間的コストと空間的コストの兼ね合いによって、ソートに使われるアルゴリズムは異なる。 概要[編集] 効率的なソートは、ソート済みのデータを必要とする他

                                                                          • ボストン茶会事件 - Wikipedia

                                                                            ボストン茶会事件(ボストンちゃかいじけん、英: The Boston Tea Party)は、1773年12月16日にイギリス領マサチューセッツ湾直轄植民地(現アメリカ合衆国マサチューセッツ州)のボストンにおいて、植民地人の急進派がイギリス本国議会(グレートブリテン議会(英語版))に対する抗議として停泊中の船舶から積荷の茶箱を海に大量投棄した事件。アメリカ史において、後のアメリカ独立戦争への転機になった出来事と評される。 発端は1773年5月10日にイギリス議会で制定された茶法であった。この法律はイギリス東インド会社がアメリカ植民地で中国産の茶葉を直接販売するにあたって、販売独占権が与えられると共に、植民地に課せられたタウンゼンド諸法に基づく関税の実質的な免税を受けるものであった。この処置は植民地に正規輸入された茶葉の値段を押し下げる効果をもたらすものであったが、植民地ではもともとタウンゼ

                                                                              ボストン茶会事件 - Wikipedia
                                                                            • 「マージソート」のやり方を示した画像、ゴミ画像かと思いきや「わかりやすい」「わりといい例なのでは」

                                                                              リンク Wikipedia マージソート マージソートは、ソートのアルゴリズムで、既に整列してある複数個の列を1個の列にマージする際に、小さいものから先に新しい列に並べれば、新しい列も整列されている、というボトムアップの分割統治法による。大きい列を多数の列に分割し、そのそれぞれをマージする作業は並列化できる。n個のデータを含む配列をソートする場合、最悪計算量O(n log n)である。分割と統合の実装にもよるが、一般に安定なソートを実装できる。インプレースなソートも提案されているが、通常O(n)の外部記憶を必要とする。(ナイーブな)クイックソート まずリストを小さな単位に分け、二つのリストをそれぞれの要素の先頭を比較してマージする。最後までこの操作をくり返すと、リストはソートされている。(上記記事より)

                                                                                「マージソート」のやり方を示した画像、ゴミ画像かと思いきや「わかりやすい」「わりといい例なのでは」
                                                                              • 高速フーリエ変換 - Wikipedia

                                                                                高速フーリエ変換(こうそくフーリエへんかん、英: fast Fourier transform, FFT)は、離散フーリエ変換(英: discrete Fourier transform, DFT)を計算機上で高速に計算するアルゴリズムである。高速フーリエ変換の逆変換を逆高速フーリエ変換(英: inverse fast Fourier transform, IFFT)と呼ぶ。 概要[編集] 複素関数 f(x) の離散フーリエ変換である複素関数 F(t) は以下で定義される。 このとき、{x = 0, 1, 2, ..., N − 1} を標本点と言う。 これを直接計算したときの時間計算量は、ランダウの記号を用いて表現すると O(N2) である。 高速フーリエ変換は、この結果を、次数Nが2の累乗のときに O(N log N) の計算量で得るアルゴリズムである。より一般的には、次数が N =

                                                                                  高速フーリエ変換 - Wikipedia
                                                                                • カースト - Wikipedia

                                                                                  ヒンドゥー教の儀式であるヤジナ。炎の中に供物が投げ入れられている(南インド) バラモン(インドネシア、バリ島) カーストは一般に基本的な分類(ヴァルナ - varṇa)が4つあるが、その中には非常に細かい定義があり、結果として非常に多くのジャーティその他のカーストが存在している。カーストは身分や職業を規定する。カーストは親から受け継がれるだけであり、誕生後にカーストの変更はできない。ただし、現在の人生の結果によっては次の生で高いカーストに上がれる。現在のカーストは過去生の結果であるから、受け入れて人生のテーマを生きるべきだとされる。カーストとは、ヒンドゥー教の根本的世界観である輪廻転生(サンサーラ)観によって基盤を強化されている社会原理といえる[2]。 一方、アーリア文化の登場以前の先住民の信仰文化も残存しており、ヒンドゥーカーストは必ずしも究極の自己規定でも、また唯一の行動基準であったわ

                                                                                    カースト - Wikipedia