Enviar pesquisa
Carregar
T77 episteme
•
Transferir como PPTX, PDF
•
1 gostou
•
663 visualizações
えぴ 福田
Seguir
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 14
Baixar agora
Recomendados
for関数を使った繰り返し処理によるヒストグラムの一括出力
for関数を使った繰り返し処理によるヒストグラムの一括出力
imuyaoti
会津合宿2015Day3:D問題
会津合宿2015Day3:D問題
HCPC: 北海道大学競技プログラミングサークル
XMLPro 4回目 文字入力 条件分岐
XMLPro 4回目 文字入力 条件分岐
XMLProJ2014
命令プログラミングから関数プログラミングへ
命令プログラミングから関数プログラミングへ
Naoki Kitora
TypeScriptのススメ ~JavaエンジニアのためのJava(like)Script
TypeScriptのススメ ~JavaエンジニアのためのJava(like)Script
AdvancedTechNight
Introduction to NumPy & SciPy
Introduction to NumPy & SciPy
Shiqiao Du
ggplot2再入門(2015年バージョン)
ggplot2再入門(2015年バージョン)
yutannihilation
全探索
全探索
Ryunosuke Iwai
Recomendados
for関数を使った繰り返し処理によるヒストグラムの一括出力
for関数を使った繰り返し処理によるヒストグラムの一括出力
imuyaoti
会津合宿2015Day3:D問題
会津合宿2015Day3:D問題
HCPC: 北海道大学競技プログラミングサークル
XMLPro 4回目 文字入力 条件分岐
XMLPro 4回目 文字入力 条件分岐
XMLProJ2014
命令プログラミングから関数プログラミングへ
命令プログラミングから関数プログラミングへ
Naoki Kitora
TypeScriptのススメ ~JavaエンジニアのためのJava(like)Script
TypeScriptのススメ ~JavaエンジニアのためのJava(like)Script
AdvancedTechNight
Introduction to NumPy & SciPy
Introduction to NumPy & SciPy
Shiqiao Du
ggplot2再入門(2015年バージョン)
ggplot2再入門(2015年バージョン)
yutannihilation
全探索
全探索
Ryunosuke Iwai
関数型プログラミングとモナド
関数型プログラミングとモナド
Masayuki Isobe
ggplot2をつかってみよう
ggplot2をつかってみよう
Hiroki Itô
Tokyo.R #19 発表資料 「Rで色々やってみました」
Tokyo.R #19 発表資料 「Rで色々やってみました」
Masayuki Isobe
論理思考とプログラミング第9回
論理思考とプログラミング第9回
Noritada Shimizu
Python for Data Anaysis第2回勉強会4,5章
Python for Data Anaysis第2回勉強会4,5章
Makoto Kawano
Rでisomap(多様体学習のはなし)
Rでisomap(多様体学習のはなし)
Kohta Ishikawa
[奈良県生駒市]中学校向け2030年へのインターンシップ: (1) AIとは何か?
[奈良県生駒市]中学校向け2030年へのインターンシップ: (1) AIとは何か?
Daiyu Hatakeyama
AtCoder Regular Contest 030 解説
AtCoder Regular Contest 030 解説
AtCoder Inc.
20150928楽しいlambda
20150928楽しいlambda
Norifumi Homma
T69 episteme
T69 episteme
えぴ 福田
Tokyor42 ggplot2
Tokyor42 ggplot2
Yohei Sato
Nagoya.R #11 入門者講習
Nagoya.R #11 入門者講習
Yusaku Kawaguchi
第3回 JavaScriptから始めるプログラミング2016
第3回 JavaScriptから始めるプログラミング2016
kyoto university
今日からはじめる微分方程式
今日からはじめる微分方程式
Ryo Kaji
姫路 IT 系勉強会 Vol.6 プログラミングコンテストという名のオンラインゲームがあるらしい
姫路 IT 系勉強会 Vol.6 プログラミングコンテストという名のオンラインゲームがあるらしい
Kazkuki Oakamoto
Nagoya.R #12 入門者講習
Nagoya.R #12 入門者講習
Yusaku Kawaguchi
乱択データ構造の最新事情 -MinHash と HyperLogLog の最近の進歩-
乱択データ構造の最新事情 -MinHash と HyperLogLog の最近の進歩-
Takuya Akiba
Lisp tutorial for Pythonista : Day 2
Lisp tutorial for Pythonista : Day 2
Ransui Iso
実用Brainf*ckプログラミング
実用Brainf*ckプログラミング
京大 マイコンクラブ
自然言語処理に適した ニューラルネットのフレームワーク - - - DyNet - - -
自然言語処理に適した ニューラルネットのフレームワーク - - - DyNet - - -
Ogushi Masaya
はじめての「R」
はじめての「R」
Masahiro Hayashi
Enjoy handwritten digits recognition AI !!
Enjoy handwritten digits recognition AI !!
KAIKenzo
Mais conteúdo relacionado
Mais procurados
関数型プログラミングとモナド
関数型プログラミングとモナド
Masayuki Isobe
ggplot2をつかってみよう
ggplot2をつかってみよう
Hiroki Itô
Tokyo.R #19 発表資料 「Rで色々やってみました」
Tokyo.R #19 発表資料 「Rで色々やってみました」
Masayuki Isobe
論理思考とプログラミング第9回
論理思考とプログラミング第9回
Noritada Shimizu
Python for Data Anaysis第2回勉強会4,5章
Python for Data Anaysis第2回勉強会4,5章
Makoto Kawano
Rでisomap(多様体学習のはなし)
Rでisomap(多様体学習のはなし)
Kohta Ishikawa
[奈良県生駒市]中学校向け2030年へのインターンシップ: (1) AIとは何か?
[奈良県生駒市]中学校向け2030年へのインターンシップ: (1) AIとは何か?
Daiyu Hatakeyama
AtCoder Regular Contest 030 解説
AtCoder Regular Contest 030 解説
AtCoder Inc.
20150928楽しいlambda
20150928楽しいlambda
Norifumi Homma
T69 episteme
T69 episteme
えぴ 福田
Tokyor42 ggplot2
Tokyor42 ggplot2
Yohei Sato
Nagoya.R #11 入門者講習
Nagoya.R #11 入門者講習
Yusaku Kawaguchi
Mais procurados
(12)
関数型プログラミングとモナド
関数型プログラミングとモナド
ggplot2をつかってみよう
ggplot2をつかってみよう
Tokyo.R #19 発表資料 「Rで色々やってみました」
Tokyo.R #19 発表資料 「Rで色々やってみました」
論理思考とプログラミング第9回
論理思考とプログラミング第9回
Python for Data Anaysis第2回勉強会4,5章
Python for Data Anaysis第2回勉強会4,5章
Rでisomap(多様体学習のはなし)
Rでisomap(多様体学習のはなし)
[奈良県生駒市]中学校向け2030年へのインターンシップ: (1) AIとは何か?
[奈良県生駒市]中学校向け2030年へのインターンシップ: (1) AIとは何か?
AtCoder Regular Contest 030 解説
AtCoder Regular Contest 030 解説
20150928楽しいlambda
20150928楽しいlambda
T69 episteme
T69 episteme
Tokyor42 ggplot2
Tokyor42 ggplot2
Nagoya.R #11 入門者講習
Nagoya.R #11 入門者講習
Semelhante a T77 episteme
第3回 JavaScriptから始めるプログラミング2016
第3回 JavaScriptから始めるプログラミング2016
kyoto university
今日からはじめる微分方程式
今日からはじめる微分方程式
Ryo Kaji
姫路 IT 系勉強会 Vol.6 プログラミングコンテストという名のオンラインゲームがあるらしい
姫路 IT 系勉強会 Vol.6 プログラミングコンテストという名のオンラインゲームがあるらしい
Kazkuki Oakamoto
Nagoya.R #12 入門者講習
Nagoya.R #12 入門者講習
Yusaku Kawaguchi
乱択データ構造の最新事情 -MinHash と HyperLogLog の最近の進歩-
乱択データ構造の最新事情 -MinHash と HyperLogLog の最近の進歩-
Takuya Akiba
Lisp tutorial for Pythonista : Day 2
Lisp tutorial for Pythonista : Day 2
Ransui Iso
実用Brainf*ckプログラミング
実用Brainf*ckプログラミング
京大 マイコンクラブ
自然言語処理に適した ニューラルネットのフレームワーク - - - DyNet - - -
自然言語処理に適した ニューラルネットのフレームワーク - - - DyNet - - -
Ogushi Masaya
はじめての「R」
はじめての「R」
Masahiro Hayashi
Enjoy handwritten digits recognition AI !!
Enjoy handwritten digits recognition AI !!
KAIKenzo
Pythonとdeep learningで手書き文字認識
Pythonとdeep learningで手書き文字認識
Ken Morishita
タダで始めるテストファースト入門 ~ C# Express + NUnit
タダで始めるテストファースト入門 ~ C# Express + NUnit
Yasuhiko Yamamoto
Material
Material
_TUNE_
プログラミングコンテストでのデータ構造 2 ~動的木編~
プログラミングコンテストでのデータ構造 2 ~動的木編~
Takuya Akiba
数式をnumpyに落としこむコツ
数式をnumpyに落としこむコツ
Shuyo Nakatani
Gorinphp0729
Gorinphp0729
akitsukada
Gorinphp0729
Gorinphp0729
akitsukada
K010 appstat201201
K010 appstat201201
t2tarumi
Rの高速化
Rの高速化
弘毅 露崎
純粋関数型アルゴリズム入門
純粋関数型アルゴリズム入門
Kimikazu Kato
Semelhante a T77 episteme
(20)
第3回 JavaScriptから始めるプログラミング2016
第3回 JavaScriptから始めるプログラミング2016
今日からはじめる微分方程式
今日からはじめる微分方程式
姫路 IT 系勉強会 Vol.6 プログラミングコンテストという名のオンラインゲームがあるらしい
姫路 IT 系勉強会 Vol.6 プログラミングコンテストという名のオンラインゲームがあるらしい
Nagoya.R #12 入門者講習
Nagoya.R #12 入門者講習
乱択データ構造の最新事情 -MinHash と HyperLogLog の最近の進歩-
乱択データ構造の最新事情 -MinHash と HyperLogLog の最近の進歩-
Lisp tutorial for Pythonista : Day 2
Lisp tutorial for Pythonista : Day 2
実用Brainf*ckプログラミング
実用Brainf*ckプログラミング
自然言語処理に適した ニューラルネットのフレームワーク - - - DyNet - - -
自然言語処理に適した ニューラルネットのフレームワーク - - - DyNet - - -
はじめての「R」
はじめての「R」
Enjoy handwritten digits recognition AI !!
Enjoy handwritten digits recognition AI !!
Pythonとdeep learningで手書き文字認識
Pythonとdeep learningで手書き文字認識
タダで始めるテストファースト入門 ~ C# Express + NUnit
タダで始めるテストファースト入門 ~ C# Express + NUnit
Material
Material
プログラミングコンテストでのデータ構造 2 ~動的木編~
プログラミングコンテストでのデータ構造 2 ~動的木編~
数式をnumpyに落としこむコツ
数式をnumpyに落としこむコツ
Gorinphp0729
Gorinphp0729
Gorinphp0729
Gorinphp0729
K010 appstat201201
K010 appstat201201
Rの高速化
Rの高速化
純粋関数型アルゴリズム入門
純粋関数型アルゴリズム入門
Mais de えぴ 福田
Yokohama6 epi
Yokohama6 epi
えぴ 福田
.NETラボ 2013-12-21 LT
.NETラボ 2013-12-21 LT
えぴ 福田
Episteme unique_ptr
Episteme unique_ptr
えぴ 福田
Episteme variadic template
Episteme variadic template
えぴ 福田
T45 episteme
T45 episteme
えぴ 福田
ぱっと見でわかるC++11
ぱっと見でわかるC++11
えぴ 福田
Mais de えぴ 福田
(6)
Yokohama6 epi
Yokohama6 epi
.NETラボ 2013-12-21 LT
.NETラボ 2013-12-21 LT
Episteme unique_ptr
Episteme unique_ptr
Episteme variadic template
Episteme variadic template
T45 episteme
T45 episteme
ぱっと見でわかるC++11
ぱっと見でわかるC++11
T77 episteme
1.
逆ポーランド電卓のつくりかた(改) ── 脱ビギナ系 データ構造とアルゴリズム講座
「StackとRPN」 わんくま同盟 episthmh episteme@cppll.jp Microsoft MVP for Visual C++ (2004-) わんくま同盟 東京勉強会 #77
2.
スタック(Stack)てなんぞ? (1) Pez(ペッツ) 知ってる? 遠足のおやつに持ってったアレ。
わんくま同盟 東京勉強会 #77
3.
スタック(Stack)てなんぞ? (2) • またの名を
First-In/Last-Out(FILO)バッ ファ – First-In : 最初に入れたのが – Last-Out : 最後に出てくる • Pushで入れて Popで取り出す わんくま同盟 東京勉強会 #77
4.
逆ポーランド記法 : 計算式の表現のひとつ •
RPN(Reverse Polish Notation) – Jan Łukasiewicz (ヤン・ウカシェヴィチ) • 1+2 を (+ 1 2) って書いてみた (LISPみたーい ♪) • 別名「前置記法: prefix notation」 • このひと論理学者でポーランド人 • なのでポーランド記法(Polish Notation) – ポーランド記法をひっくり返したのがRPN • 1 + 2 → (+ 1 2) → 1 2 + って書いてみようよ • 別名「後置記法: postfix notation」 ※ふつーの数式は 「中置記法: infix notation」 わんくま同盟 東京勉強会 #77
5.
RPN をStackで計算(評価)する • RPN式を左から順に読み…
– 数値なら • StackにPush – 演算子なら • StackからPopして • StackからPopして ← 単項演算なら省略 • 演算子に応じた計算をして • 結果をStackにPush • この操作を繰り返し、 最後にStackに残ったのが答 わんくま同盟 東京勉強会 #77
6.
RPN をStackで計算してみよう (1)
1+2= 計算式 : 1 2 + ※ 最下部がStackの先頭 1 1 2 3 1 2 + 数値→ 数値→ 演算子→ Push Push PopしてPopし て 計算して Push わんくま同盟 東京勉強会 #77
7.
RPN をStackで計算してみよう (2)
(1 + 2)×(3+4) = 計算式 : 1 2 + 3 4 + × ※ 最下部がStackの先頭 3 1 3 3 3 1 2 3 3 4 7 21 1 2 + 3 4 + × Push/Pop/計算するだけの簡単なお仕事です。 わんくま同盟 東京勉強会 #77
8.
RPNの特徴 • すっごく単純 –
Stack一本で計算できる → 計算機向き • 演算子に優先順位がない 演算子が出てきたらすぐさま計算 – カッコ がいらない – = もない • 日本語と同じ順序 – (1 + 2) ×( 3 + 4 ) = 1 に 2 を たして、3 に 4 を たして、かける →1 2 +3 4+ × わんくま同盟 東京勉強会 #77
9.
Stack二本で計算機を作る ×
• 命令Stackに式を積む + • ひとつずつPopしながら 4 – 数値なら計算Stackに積 3 む + 3 – 演算子なら計算Stackか 3 2 らPopしてPopして、 4 1 計算してPush 命令Stack 命令Stackが空になったとき、 計算Stack 計算Stackに残るのが答 RPN計算手順 わんくま同盟 東京勉強会 #77
10.
ナカミはシックなModel / (View+Controller) View
(MainWindow.xaml) Model (Calculator.cs) Event (データ更新! ) Event (ボタン押された! ) Controller (MainWindow.xaml.cs コードビハインド) わんくま同盟 東京勉強会 #77
11.
「辞書」を使いたい…
ココが辞書ね。 わんくま同盟 東京勉強会 #77
12.
• KeyedCollection<Tkey,TItem>
– INotifyCollectionChanged を実装していないし、 抽象クラスなのでちょっとばかし書き足しが 必要。 • せっかくだから(?)作ってみた – set_adaptor<T> : IList<T>をソート済み配列化 var list = new ObservableCollection<Item>(); set_adaptor<Item> adaptor = new set_adaptor<Item>(list, 比較delegate); adaptor.Add(new Item(“apple”,”りんご”)); … わんくま同盟 東京勉強会 #77
13.
ソート済み配列の検索と挿入に必要なもの • lower_bound /
upper_bound equal_range / binary_search { 0 1 2 2 3 4 4 4 5 7 8 9 } に4を挿入 lower_bound upper_bound { 0 1 2 2 3 4 4 4 5 7 8 9 } に6を挿入 わんくま同盟 東京勉強会 #77
14.
set_adaptor<T> public class set_adaptor<T>
: IList<T> { private IList<T> list_; private Func<T,T,bool> pred_; public set_adaptor(IList<T> list, Func<T,T,bool> pred) { list_ = list; pred_ = pred; … } …IList<T> メソッドをだらだらと再定義 (list_に対して追加/削除/etc.) } わんくま同盟 東京勉強会 #77
Baixar agora