巧妙なアイデア「ふたまたニョキニョキ」がすべてを解決する【データ構造2】#49

  Рет қаралды 86,485

ゆるコンピュータ科学ラジオ

ゆるコンピュータ科学ラジオ

Күн бұрын

Пікірлер: 189
@yurucom
@yurucom Жыл бұрын
【参考文献のリンク】 ○アルゴリズムとデータ構造 amzn.to/3FJSIsN 聖書。非プログラマーが読むのはややキツいが、絶対古くならない名著。 【サポーターコミュニティ加入はこちらから】 yurugengo.com/support 【おたよりフォーム】 forms.gle/BLEZpLcdEPmoZTH4A ※皆様からの楽しいおたよりをお待ちしています!
@趣味で数学をやっている者-g1b
@趣味で数学をやっている者-g1b Жыл бұрын
↓これ1番好きな数学ジョークですw Q.フラクタルの提唱者、Benoît B. Mandelbrot (ブノワBマンデルブロ)のBはなんの略? A. Benoît B. Mandelbrot
@趣味で数学をやっている者-g1b
@趣味で数学をやっている者-g1b Жыл бұрын
Benoît (Benoît (Benoît (…). Mandelbrot). Mandelbrot). Mandelbrot
@floatum4941
@floatum4941 Жыл бұрын
水野さんがでかいイメージあるのは実際に会ったことある人だけで、ラジオ動画見てる人だけだと水野さんと堀元さんの身長差に驚くのよ(n=1)
@kacky3219
@kacky3219 Жыл бұрын
kzbin.info/www/bejne/q5izo5qMp7dpl8k これで分かる
@theuserhasnoname4783
@theuserhasnoname4783 Жыл бұрын
コメの高評価の数はサンプル数かな? 自分も押しとこ
@HitYoutube
@HitYoutube Жыл бұрын
ゆる言語学かまいたちペアですね
@simatani
@simatani Жыл бұрын
ランダムな数字を一日中叫ぶ続けることができるランダム部長は相当に優秀な方ではないかと。友達になりたいかどうかは別にして。
@user-qwertyu1op
@user-qwertyu1op 4 ай бұрын
このコメントを見て本当にランダムならSCP-4559みたいな使い方が出来そうだなとか思ってしまった
@nanakiai
@nanakiai Жыл бұрын
水野さんめちゃめちゃコンピューター科学の素質あって羨ましい ひらめき方がパンピーじゃないんよ
@hydadesign2490
@hydadesign2490 Жыл бұрын
堀元さんが後半の水野さんの抽象化から、データ構造のまとめに戻さずに「創発」までもってくところで、脱線のほうの枝を優先していることがこのラジオのおもしろさをつくっているルールなのだ感じた。
@hydadesign2490
@hydadesign2490 Жыл бұрын
@@aqua372b ありがとうございます。
@Ethereal-Wind
@Ethereal-Wind Жыл бұрын
なるほど!この番組からパフォーマンスよく知見を得られるのは、厳密コンピュータ科学ラジオでも無秩序コンピュータ科学ラジオでもないからなのですね!
@sabak7390
@sabak7390 Жыл бұрын
水野さん予想通り自力でO(log n)にたどり着くの流石ですね。 最悪値についても余裕で気づくと思ってましたw
@kensuketomioka2321
@kensuketomioka2321 Жыл бұрын
堀元さん、水野さんが喧嘩することなく、これからもずっと仲良くいて欲しいなあ
@あの耳からバナナ生えてますよ
@あの耳からバナナ生えてますよ Жыл бұрын
創発かは分かんないけど、洗濯バサミをつなげて複雑な形を作ったことは誰しもあると思う。
@kaoruuuuun
@kaoruuuuun Жыл бұрын
堀元さんの何となくでランダムに出てきた数字が128ページでしっかり2べきなの、コンピュータサイエンス学徒みが強くて良い
@knngayr
@knngayr Жыл бұрын
「二分探索木の話じゃなくて木の話だ」の部分、堀本さんが言語学ラジオの方でいってた「塹壕の中に無神論者はいない」に対するジェイムズ・モロウの「それは塹壕の話であって無神論者の話じゃない」を呼び起こして一人でふふってなる
@ysdytk
@ysdytk Жыл бұрын
本質ではないと思いますが、31を32に、32を33にコピーすると全部同じ値になってしまいます(移動のつもりで間違ってそのコード書いた事あります😅)
@hiroya1192
@hiroya1192 Жыл бұрын
メインフレームでは0クリアや空白クリアで使うロジックです。
@extukusu
@extukusu Жыл бұрын
逆に動かさないと移動にはならないの、一回はやるよね。
@HitYoutube
@HitYoutube Жыл бұрын
@@hiroya1192 それは聞いたことないな。Fortranでは配列定義後の初期化はデフォルトですし。全部クリアなら配列取り直すだけで自動的になってくれます。
@osirkov5238
@osirkov5238 Жыл бұрын
ほんとうだw
@chimkio
@chimkio Жыл бұрын
基本情報技術者の試験に出てたな、こういうミス
@lefthand3754
@lefthand3754 Жыл бұрын
水野さんと堀本さんの身長の勝手なイメージが真逆でびっくりした
@norirumi8644
@norirumi8644 Жыл бұрын
39:25 たぶんだけど水野さん、数列の一般項とか決め打ちした後数学的帰納法で証明するタイプ
@近衛東
@近衛東 Жыл бұрын
ランダム部長が連続する数を叫んだときはテンション上がるよね
@kyoh86
@kyoh86 Жыл бұрын
シンプルなルールが複雑な物を生み出す、って示唆良いですねぇ。 スゴくシンプルなルールで行動する小さなロボットを大量に集めたら、アリ見たいに餌を集めるロボットの群れができたって話を思い出した。
@Pさん-r5s
@Pさん-r5s Жыл бұрын
ポインタに一旦引っかかった人でないと、ポインタの威力って伝わらないかもな~。 とてもいい解説でした!
@Pさん-r5s
@Pさん-r5s Жыл бұрын
身長1、2、3cmのやつを与えられた時の水野さんの表情の変化、めちゃめちゃ良かった。
@溶け出した醤油
@溶け出した醤油 Жыл бұрын
個人的には一番グッとくるデータ構造はスタック。 木構造の深さ方向の探索を見事にメモリ上に落とし込んでいると思う。 なによりスタックへの積み下ろしで、コンパイラーやCGの座標変換などが同じような抽象化で扱えるのが気持ちいい。 ふたまたにょきにょきは天才の発想
@HitYoutube
@HitYoutube Жыл бұрын
スタックは再帰的呼び出しの時に超便利。終了判定をスタックに積み残しがあるかだけで判定出来て、イチイチ比較演算とかをしなくて良くなる。
@kszy4793
@kszy4793 Жыл бұрын
カードゲーマーがプログラムを学ぶときになぜか知っていることでお馴染みのスタック
@westmountain5428
@westmountain5428 Жыл бұрын
アルゴリズムの本読んだときに二分探索が出てきて、だから?となったけどその有用性がなんとなく分かった! 文系人間としてはこういう話がありがたい!
@256yayo
@256yayo Жыл бұрын
14:39 より厳密には 水野さんの右側の子は全て水野さんより大きい ではなく 水野さんの右側の子孫は全て水野さんより大きい かと思います。 子: 直下 子孫: 子をたどることで到達できる
@gensho7120
@gensho7120 Жыл бұрын
うーん、今回も面白かった。「ふたまたニョキニョキという中庸なルールが挿入と探索の両方に有用」を切り取って、動画のメインテーマにするという堀本さんのプランニングセンスにまずは脱帽です。
@user-byakko
@user-byakko Жыл бұрын
文系と理系の垣根を越えてくるの、好き~
@yuyasato4132
@yuyasato4132 Жыл бұрын
現在の台本では飽き足らず、未来の台本までブレイクし始める水野氏、応援してます
@aderia_karimera2
@aderia_karimera2 Жыл бұрын
いつかデータ圧縮の回をやる時またハフマン符号化に自力で辿り着くかな 楽しみ
@きりこう-h9u
@きりこう-h9u Жыл бұрын
水野さんの記憶力すげー
@haruka_52
@haruka_52 Жыл бұрын
計算機科学でポインタという時はCのポインタを指すのではなくて配列の添字や例えの中のページ番号のようにデータに即座にアクセスするための値を指す抽象概念だったと記憶しています。Cのポインタはそれを目指してはいるので無関係ではないですが。 で、CのポインタはCの初学者が躓く最大のポイントだけど配列の添字は初学者が躓くことはあまりないので、Cのポインタの学習を阻害する難点は抽象概念のポインタとは関わりが無くて、おそらく型付けがゆるくてポインタがちゃんとポインタでない(型を間違えるとデータの途中の無意味なアドレスを指してしまったり、扱いを間違えると何のデータも指さない無意味な場所やメモリ空間上に存在しない場所を指してしまう)事が問題なのだと思っています。 なので、計算機科学を学ぶにおいて必ずしもCは適切な言語とは言えないしポインタを理解するのにC言語のポインタを学ぼうとするのは非常に非効率なのではないかと思います。
@benikoji3
@benikoji3 Жыл бұрын
C言語のアレは「アドレス」だからw
@renk1310
@renk1310 Жыл бұрын
18:08 水野さんが台本ブレイカーとして圧倒的な成長を見せた瞬間
@micty392
@micty392 Жыл бұрын
機械科学生の頃のCNCフライス実習のコード入力で指導員の方から「1行目の次は11行目、その次は21行目というような書き方にしてくださいね」と言われ、理由は「ミス修正時にコードとコードの間に新たなコードを書き足しやすいから」でした。 今回の話と似てるかな〜と思って聞いていましたが、工作機械のコンピュータとは全然違って面白いですね。
@RyuseiYamaguchi
@RyuseiYamaguchi Жыл бұрын
CNCプログラミングではNコードという行番号を指定する機能と、GOTO文があるのですね。 実は、昔はFORTRANやBASICといった、用途を特定しないプログラミングに使われる言語(汎用プログラミング言語)でも、行番号とGOTO文を使って、プログラムの制御構造を表現していました。特に、昔のホビーパソコン(マイコン)のBASIC処理系では、行番号を指定している場合は行の編集、指定されなかった場合はコマンドの即時実行といった仕組みのラインエディタが使われていて、全ての行に必ず行番号を付す必要があったこともあり、行番号を10ずつ飛ばして入力する作法は同様でした。 しかし、その後に登場したプログラミング言語では、読んで分かりやすい名前(ラベル)に対するGOTOや、構造化プログラミング、関数の呼び出しといった制御構造が使われるようになり、行番号は使われなくなりました。 BASICの行番号がコンピューターの内部でどうやって管理されていたか探したところ、 ngs.no.coocan.jp/doc/wiki.cgi/TechHan?page=3%BE%CF+BASIC%A4%CE%C6%E2%C9%F4%B9%BD%C2%A4 が見つかりました。図2.11 テキスト格納形式 を見てみると、各行が「リンクポインタ」でつながった構造になっています。木構造ではないですが、ポインタを使って、行を簡単に抜き差しできるようになっていることが分かります。
@HitYoutube
@HitYoutube Жыл бұрын
それは、パンチカードという1行単位でデータを入力するときの名残ですね。 初期BASICにもRENUMという各行の行番号を10単位に揃えるコマンドがありました。
@applejack0094
@applejack0094 Жыл бұрын
ワークショップデザインとかでも、問いの立て方として、ある程度の制約のある問いの方が場が活性化する、って言うのと同じ話ですね
@mozhigengo9479
@mozhigengo9479 Жыл бұрын
ゲームブックを思い出した。 各ページにストーリーと選択肢があって、選択肢ごとに何ページに進むか違い、選択によって展開と結末が変わる本。最近あるのかな。
@kanametatsuya
@kanametatsuya 11 ай бұрын
19:56これどうやって計算してるんですか? 22:30そうか、どっちに行くかを計算するんだから二択だ、、
@user-hu8yo1pu9w
@user-hu8yo1pu9w Жыл бұрын
とてもどうでもいい指摘ですが、新自由主義はケインズではなくフリードマンかハイエクですね。この2人はケインズと対立していたので思想としては逆です。 新自由主義自体レッテル的な要素が多い言葉なのでこの2人に使うのも微妙ですが、、、 細かいことを指摘してしまい申し訳ありません。 お二人のご活動、陰ながら応援しています。
@mizutansan594
@mizutansan594 Жыл бұрын
ニョキニョキの描き方は最初を何にするかで形が全然違ってくるというのは、地図の正距方位図法が中心地点によって形が全然違ってくるのに似てますね。ニョキニョキも正距方位図法も元は同じものだし、全て同じやり方で記述しているのに。 正距方位図法で地図を描いてくれるサイトがあるんですが、ぐるんぐるん動いて面白いです。
@tikin315
@tikin315 Жыл бұрын
相変わらず楽しそうでなにより ニコニコしながら見てます
@yosshi--oq8et
@yosshi--oq8et Жыл бұрын
16:41 素人からすると良さそうに見えちゃうの凄い分かる。
@algeot5132
@algeot5132 Жыл бұрын
ハフマン符号化の話は詳しく分かりませんが、二分探索木を実装する際には01の組み合わせでデータを保存するので、素晴らしい着眼ですね この話が終わったらセグ木やBITの話をして、それらの木とコンピュータとの相性の良さを語るのも一興ではないですか?
@user-mv6pm1pc3o
@user-mv6pm1pc3o Жыл бұрын
機械工学科学卒の会社員で、面白く視て聴いてます。私は「出たー」=二人で伏線回収するヤ・ツーと見ています。       今回の巧妙な考え方「ふたまたニョキニョキ理論」ならぬ、【二分探索木】が、チョムスキが提唱した「ふたまたニョキニョキ理論」でなく【Xバースキーマ】理論の、特徴の一つ:句カテゴリの構造は全ての接点で「二股」に枝分かれすること:二股分かれ の原理 (binary branching principle)(他にも: 句構造は必ず句の核(主要部; Head)をもち ;主要部側とそうでないものとを二分木を利用して表現できると仮定する)と似ていて、「出たー」と脳がいっぱいアドレナリンを出して、興奮しています。
@to_lz144
@to_lz144 Жыл бұрын
シンプルな規則が複雑性を産む、という水野さんの話からバッカスナウア記法の話とかが始められそうですね!
@katuusagi
@katuusagi Жыл бұрын
メモリ効率を厳密にするなら確かに二分木が最強になるけど メモリを潤沢に使えるならハッシュテーブル最強なので そこまで踏み込んで第3回をやって欲しいぜ!
@kaz4381
@kaz4381 Жыл бұрын
ヒープ構造なんかだと左右の子はそれぞれ自分の番号*2+1(2)のアドレスに格納されるので、水野さんの言うハフマン符号的な考え方と殆ど同じなんじゃないでしょうか?
@EanaHufwe
@EanaHufwe Жыл бұрын
同じこと思った
@iou_256
@iou_256 Жыл бұрын
意外とでかいことでお馴染み水野
@falconno6554
@falconno6554 Жыл бұрын
30:32 ああ、それでいいんですね… このデータ構造を学んだとき、「あれぇ…データの入れ方で並び方変わるのでは…??  どうやって整列させるんだろう…??」と思っていました
@mudaso-heavy-user
@mudaso-heavy-user Жыл бұрын
楽しみに待ってました
@korp0620
@korp0620 Жыл бұрын
7:11 Wikipediaは(二分木、二進木も)「ぎ」でした。
@HitYoutube
@HitYoutube Жыл бұрын
二分木は「ぎ」の一択だと思います「き」だと二分岐と同音になり同じ文脈で出てくるので混乱するから。
@knu2112
@knu2112 Жыл бұрын
-き だと「器」とも紛らわしいからですね。分類器とか生成器
@yassu3015
@yassu3015 Жыл бұрын
僕も数学得意だけど、理科苦手なタイプなので、水野さんに親近感を感じています
@nagasesion
@nagasesion Жыл бұрын
ランダムアクセスできる人とファイルより,マンションの集合ポストとかのほうがわかりやすい例えだったりしないかな…?(人間的にもある程度ランダムアクセスができるので,想像しやすそうかなと)
@えんどう-m9l
@えんどう-m9l 10 ай бұрын
16:37 二分木を配列で扱うときの話としては本質な気がする
@uma_cryptids1803
@uma_cryptids1803 Жыл бұрын
11:02 計算機科学では木は下向きに生えるものだから......
@heibun
@heibun Жыл бұрын
Knuth先生もTAOCPの中で木って呼ぶわりに下向きに生えてるの不思議だよね(上に伸びていく図になるのが自然)と仰っていましたね。 計算機科学から入るとシャバの感性が分からなくなって「木=下に生える」という常識が形成されてしまうのはCSあるあるなのかもしれません。
@tenkawakiirobou
@tenkawakiirobou Жыл бұрын
そう考えたらどっちかってっと根っこだよな
@yutosuzuki5192
@yutosuzuki5192 Жыл бұрын
ゲームブックって、ランダムアクセスしてたんだな…
@okita0621
@okita0621 Жыл бұрын
水野さん185cmぐらいかなと思ってたけど178なのか、 結構ヒール高い靴履いてる?
@クエイボマローン
@クエイボマローン Жыл бұрын
実際には187cmです
@シモフルタニ
@シモフルタニ Жыл бұрын
木の通り数は、共通テストに出ると噂のカタラン数ですよね!なんでカタラン数になるかは知らんけど。 水野さんが将来の木の回で自力でカタラン数にたどり着くのが楽しみです😄😄😄
@himadajin
@himadajin Жыл бұрын
水野さんすげー
@maroon7749
@maroon7749 Жыл бұрын
水野さんの結論,複雑系科学の本質ついててすごい
@くりーむ-u3k
@くりーむ-u3k Жыл бұрын
水野さんの最後の気づきがあったのなら、もうライフゲームをやるしかないですね!
@user-nk6ff1nw7w
@user-nk6ff1nw7w Жыл бұрын
12:40 チェが苗字でホンマンが名前だから「ホンマンって呼ぶな」ってツッコミは結構シュールな気がするw
@slowly_slowly11
@slowly_slowly11 Жыл бұрын
一般的に、チェ・ホンマンさんをチェで呼んだりホンマンで呼んだりしないよねって話じゃないですか? チェ・ホンマンさんの母国の人からしたらシュールそうですけどね
@HitYoutube
@HitYoutube Жыл бұрын
まあ外国でNo.1有名日本人の織田信長も「信長」と呼ばれてますしね。
@aqua372b
@aqua372b Жыл бұрын
ホンマン呼びは韓国では普通です。
@mizutansan594
@mizutansan594 Жыл бұрын
毛沢東を沢東と呼ぶ的な。
@hibaryllis
@hibaryllis Жыл бұрын
かつての冬ソナブームのとき、ペ・ヨンジュンと結婚したら苗字がペになる問題ってのがありましたね
@かず-z6c
@かず-z6c Жыл бұрын
大小を比べて並べると丁度良いんですね。素晴らしい。
@nossy9475
@nossy9475 Жыл бұрын
探索も挿入もしやすい!すげぇ。 最初に取り出す値で木構造が変わることは理解したのですが,データを削除・挿入した際に木構造を組み直す(最良を目指す)ことはするのでしょうか。 アップデートってそういうこと?
@早川眠人
@早川眠人 Жыл бұрын
平衡木と云うのがその考え方
@himadajin
@himadajin Жыл бұрын
まさにそのとおりです 32:00のような長細い木だと最大で2回分岐をたどる必要がありますが、 32:20のような木だと分岐が1回で済むように、なるべく木の階層の数を小さくするほうが効率が良くなります 削除・挿入時にルールを追加したり、木を組み替えることで効率の良い状態を維持し続けるアルゴリズムがあります(平衡二分探索木と調べると出てきます)
@HANEKAWAhaorenoyome
@HANEKAWAhaorenoyome Жыл бұрын
めっちゃ学びがあるコメントモメント!
@koi506
@koi506 Жыл бұрын
そこでゆる言放り込んで意味も通ってるの凄い
@surumeneco
@surumeneco Жыл бұрын
二分探索木は回転で簡単に整列できるのが良い所なんだなぁ
@user-dr2ws4fw6b
@user-dr2ws4fw6b Жыл бұрын
水野さんボケ倒してておもしろい
@AMIWsement
@AMIWsement Жыл бұрын
@pc_1330
@pc_1330 Жыл бұрын
ぼやーんとしてよく分からなかったけど、この例え分かりやすいかも!
@user-hf1mi8ko4e
@user-hf1mi8ko4e Жыл бұрын
すごい面白いw
@スイッチセブン
@スイッチセブン Жыл бұрын
39:49 この辺の話で 競走馬シミュレーションゲームのダービースタリオンを作った園部さんっていう人がいるんだけど この人がシリーズが進むにつれて競走馬のパラメータってどう増えて言ったんですか?みたいなこと聞かれて 増やしてませんよ、むしろ減らせないかって常に考えてました パラメータが単純だから多種なバリエーションが生まれる 増やしてしまうと固定化されてしまうって言ってたの思い出しました。
@anag3830
@anag3830 Жыл бұрын
二分木、むかーし昔に某タゴラ某イッチの作者によるプログラミングについての特番で知ったなぁ すごくおもしろかったけど録画がVHSだったからもう見る手段がない…
@SE-en6tx
@SE-en6tx Жыл бұрын
これって同値のデータが来たときどうやって処理するんだろう? 分岐をもう一個増やしてくっつければ処理できそうだけど、それだと二分探索木じゃない気が…
@かず-i8f8h
@かず-i8f8h 11 ай бұрын
右左のどちらかに入れてあげればいいだけだと思いますよ〜。なのでもし同じデータが連続する場合左右に偏ることになって探索の最悪計算量がO(N)になっちゃいます😢 なのでそこを工夫した平衡二分探索木というものがあったりします。ご興味があればぜひ調べてみてください!
@user-er5mj2dx8p
@user-er5mj2dx8p Жыл бұрын
理系の人桁数のことオーダーって言うよねっていう薄い認識が補強されてよかった
@こけし-k3f
@こけし-k3f Жыл бұрын
この流れで再帰の話題も取り上げてほしい
@re-tos2887
@re-tos2887 Жыл бұрын
水野さんって常にちょっとマウント取りたい感があって、堀本さんは相手を尊重する態度が見受けられるからちょうどいい相性なんかな?って感じました
@スマイル-j3z
@スマイル-j3z Жыл бұрын
兄に対抗する弟(水野)と生意気な弟を暖かく見守る兄(堀本)に見えます。
@Aros417
@Aros417 Жыл бұрын
時と場合によって逆な時もある気がする
@趙適当
@趙適当 Жыл бұрын
30:15 C言語の難しさはポインタそのものというより,ポインタの文法事項だと思うの
@tamarind_kingdom
@tamarind_kingdom Жыл бұрын
トレードオフと創発の話、いつかシステムアーキテクチャ回でがっつりやってほしいです
@hirominakami9991
@hirominakami9991 Жыл бұрын
ふたまたニョキニョキのときは 対象データが正規分布である。最初のデータが中央値に近いデータサンプルのときに、最も効率的な探索ができるってことですかね? 例えば正規分布でも初回データが中央値から離れてたり、分散の度合いが平均値からズレて山が複数出たりすると、偏りが木の分かれ方で多段数が部分的に増えるとか…??? 表現が正しいかだいぶ怪しいですが… 統計やDBの入門を勉強しようとしててリレーショナルの時と、じゃあ二分探索木がNoSQLで違い出てくるのかなぁとか、色々考えちゃいました… 今後も動画楽しみにしてます!
@おさヒロ-p5o
@おさヒロ-p5o Жыл бұрын
ちょうど二分探索木が課題だったから助かる
@shengu4449
@shengu4449 Жыл бұрын
ページの左下や右下には、常にそのページの人よりも新人がくるから、182ページの左下に7が来ることは無いのでは 182よりも大きい数が来る気がする
@tenkawakiirobou
@tenkawakiirobou Жыл бұрын
ある程度データが揃った後に木を組んでる想定だと思いますよ(たぶん判ってて言ってるとは思うけど…)
@ミツノ理科室
@ミツノ理科室 Жыл бұрын
二人ともめっちゃ頭いいから面白い
@hce4098
@hce4098 Жыл бұрын
にぶんたんさくぼく、かと思ってた。
@Joi2O
@Joi2O Жыл бұрын
つまり……社員のファイルをゲームブックに変えてしまえばいい……ってコト!?!?
@ionion2963
@ionion2963 Жыл бұрын
乱数上司ニキのかわいいポイントは常時上司であること。
@SonodaMai74
@SonodaMai74 Жыл бұрын
03:37 >31番のデータを32番に、32番のデータを33番に それだと31番以降は全て31番のデータになってしまうじゃないですか!(という細かいツッコミ データ末番から31番までの順番でデータをコピーしていかないとからないのです……
@0DeN20m
@0DeN20m Жыл бұрын
単純なルールから複雑な構造が出るの ライフゲームだ!となった
@hirominakami9991
@hirominakami9991 Жыл бұрын
ポインタのすごさって メモリに格納できる範囲のデータサイズのときだよね、直接指定できる凄さの認識あっているのか不安になる… 数十万人のユーザ情報を全部メモリに乗せるのは難しいのかなと。これは当然DBですよね。 それとは別に何か情報参照する上で、判断基準となる表があって、1Gバイト程度であればメモリに全部乗せてしまって、 直接参照したほうがストレージにあるより早く処理ができるってことなのかなと… まぁ何度も呼び出すのかどうかとか、更新が入るのかどうかとかにもよるんだろうけど… どこにデータを置くのか、どういった構造なのか どういった時にそのデータを利用するのか 結局そこらへんも含めて全部考えられる人がすごいプログラマーってことなんかね?
@256yayo
@256yayo Жыл бұрын
ハフマン符号というより、ノードの番号付けに近い気がする 1 10 100 101 11 110 111 これを二進数として読めば 1 2 4 5 3 6 7 自然数に一対一対応させられる
@chimkio
@chimkio Жыл бұрын
全く関係ない訳ではないなー、と思ってた
@mtt1409
@mtt1409 Жыл бұрын
つまりある程度の制限があったほうが創造性が刺激されるってこと?
@shijima9303
@shijima9303 Жыл бұрын
創発の話はオートマトンとかの複雑系に近いのかな
@pc_1330
@pc_1330 Жыл бұрын
二分探索木の概念、意外なとこに意外な観点が潜んでるのだなぁ、と思いました。めくるめくわ。 ラングトンの蟻は、KZbin動画でもいろんなの上がってて面白かったですが、単純に一方向に伸びてくようなのだけでなくかなり複雑な図形を描くものもあるみたいですよ。 (その分パラメーターの取り方とか複雑になっているのかもしれませんがちょっと私もそこまではわかりません。) 話はズレますがラングトンの蟻って、原始の有機物の様々な組み合わせの試行から生命が生まれたり、ビッグバン以前の混沌の中から今の光とか時間とか重力とか物質とかいった言ったものを定義するこの宇宙の物理法則が生まれたこととか、そんな過程を垣間見れるような現象のように思えてゾクゾクしてしまいます。
@HANEKAWAhaorenoyome
@HANEKAWAhaorenoyome Жыл бұрын
Cは避けて通れないんですかね? 今はPHP(Laravel)・Ruby(Rails)・JS(next.js)を学習したところですが、さすがにC言語を学習する積極的な理由が思いつきません😅
@ぬーべー-i5p
@ぬーべー-i5p Жыл бұрын
暇があるなら触れておくことをお勧めします C、C++までやっておくと、抽象度の高い言語でもどういう実装で動いているか想像しやすくなり 言語のなぞ制約がなぜ必要かわかったり、処理の重さが感じ取れたりします
@soo805
@soo805 Жыл бұрын
実際の具体的な命令を覚える必要はないですが用語類だけでも抑えておくと役立つ事は多いかもです 大学学部の授業で1年齧っただけでしたが別言語の習得やらメモリ管理感覚に繋がったとおもいます
@HitYoutube
@HitYoutube Жыл бұрын
ハードウェアまで動かそうとすると、まだまだCやC++がメジャーだと思います。 Cだとmalloc()みたいな後発言語では隠蔽されている過程も書かないとならないし、ハードウェア資源直結型言語だと思います。
@別部穢麻呂
@別部穢麻呂 Жыл бұрын
Cを勉強することを推奨する意見ばかりなので、逆も書いてみようと思います。 皆さんが書かれている目的なら、Cを勉強した方がよいですが、少なくともアルゴリズムとデータ構造を勉強するだけなら、PHPでもRubyでもJSでも十分だと思います。 ただし、以下の条件付きです。 - 言語のライブラリーで最初から用意されているのを無視して、あえて自前で作って見ること - 上記の理由もあり、フレームワークは使わず、コンソールアプリで学ぶべきです。PHPもJSもコンソールアプリを作ることは可能ですが、Ruby(もちろん、Railsは使わない)の方が普通かと思います。 なお、書籍等で本格的にアルゴリズムとデータ構造を学ぶなら、C、Java、Pythonの方が適切かもしれません。
@HitYoutube
@HitYoutube Жыл бұрын
@@別部穢麻呂 確か自分がアルゴリズムとデータ構造を勉強したときの言語はPascalでした。今ならPythonかのうネスト=インデントが好きじゃないけど。
@飛田龍人
@飛田龍人 Жыл бұрын
全くの素人なので恐縮なのですが、社員ファイルに身長と体重が書かれている場合には二分探索木以外のデータ構造で扱うということでしょうか?
@ナミネコ-n5n
@ナミネコ-n5n Жыл бұрын
身長の問題と体重の問題の双方に答えるのが目的であれば、木を2つ作ればいいかと思います。 検索は今まで通りできますし、追加の計算量は2倍ですが、定数倍なので変わらずΟ(logn)です。(ノードの中身を社員情報へのポインタとすれば、データはほとんど増えません)
@tshibuya3576
@tshibuya3576 Жыл бұрын
「オルグする」ウケる
@かず-i8f8h
@かず-i8f8h 11 ай бұрын
平衡二分探索木までは行かないんですね〜
@山田太郎-e5w2s
@山田太郎-e5w2s Жыл бұрын
堀元氏、しょっぱなから分岐予測に失敗
@クサモウム
@クサモウム Жыл бұрын
木を逆さにするといえばバオバブですね
@user-kj7xo4ei1b
@user-kj7xo4ei1b Жыл бұрын
最終的には本体は順番に追加して行って別途五十音順、身長順、年齢順など検索したい条件ごとの索引を用意する何とか大辞典が正解と。
@qgb01362
@qgb01362 Жыл бұрын
エントロピーの話になってます。
@user-jp9mc6bw5g
@user-jp9mc6bw5g Жыл бұрын
19:50 理想的な配置での話であれば、ノードは終点だけでなく各分岐にも存在するので最大13回では?
@HitYoutube
@HitYoutube Жыл бұрын
実際には最大9999回ですね。全部最初より大きいのを挿入していったらそうなる。 現実的には13の2倍以内くらいのパフォーマンスになるかと思います。
@アイオライト-u1x
@アイオライト-u1x Жыл бұрын
@@HitKZbinコメ主さんは分岐の偏りがない理想的な配置の話をされてますよ
@acna-yx1nf
@acna-yx1nf Жыл бұрын
水野さんがドラゴンボール超 のモナカに見えて仕方ありません。ぜひ議題として取り上げていただきたいです。
@よりとみ
@よりとみ Жыл бұрын
37:31 水野さん😆
@Summer_Kun
@Summer_Kun Жыл бұрын
「二分探索木が最高」二分探索木飢饉とかがあった国の諺かなぁ。
@dongriemeen9351
@dongriemeen9351 Жыл бұрын
プログラミング言語のパーサーは単純な操作ではないですが、文法が人語より超絶シンプルなフラクタル解析?ですね
@dongriemeen9351
@dongriemeen9351 Жыл бұрын
自分でも感覚すぎてなんもわからん…
@user-kc9fc7sy9x
@user-kc9fc7sy9x Жыл бұрын
01ならコンピュータが扱えるというのは割りと浅はかでコンピュータで使うには桁数が固定されがちな気がする
@dx-5vwof
@dx-5vwof Жыл бұрын
ロマネスコはフィボナッチでは?
@100EIZO
@100EIZO Жыл бұрын
前日にゆる学徒カフェの連濁の話を聞いた後なので、「また?」って思った
@tenrai3065
@tenrai3065 Жыл бұрын
ラジオ作るのかぁ。今はDSPでの検波が主流だな。(ちがう、そうぢゃない
@HitYoutube
@HitYoutube Жыл бұрын
そだね、AMラジオなんて直接AD変換してデジタル処理できるようになったし。
ネット回線の歴史は半沢直樹。接続を巡る大人の戦い【ピアリング戦記1】#50
37:52
2000年問題で混乱した社会が面白すぎるwww【年問題2】#53
40:48
ゆるコンピュータ科学ラジオ
Рет қаралды 87 М.
Minecraft Creeper Family is back! #minecraft #funny #memes
00:26
The Joker wanted to stand at the front, but unexpectedly was beaten up by Officer Rabbit
00:12
リスナーのあるあるが高度すぎて共感できない【おたより読む回】#47
1:09:22
ゆるコンピュータ科学ラジオ
Рет қаралды 141 М.