More Related Content
PDF
PDF
PPTX
how-calculate-cluster-coefficience PDF
PDF
PDF
PDF
PPTX
What's hot
PDF
PPTX
PDF
池袋数学勉強会 対馬龍司 線形代数学講義 3章章末問題解説 PPTX
【Deep Learning (MIT Press)】線形代数 2.1~2.7 PDF
PPTX
Scalable Partial Least Squares Regression on Grammar-Compressed Data Matrices PDF
Viewers also liked
PDF
実践・最強最速のアルゴリズム勉強会 第一回 講義資料(ワークスアプリケーションズ & AtCoder) PPT
Algorithm 速いアルゴリズムを書くための基礎 PPTX
アルゴリズム取引のシステムを開発・運用してみて分かったこと PDF
Samurai CodingなどにみるゲームAIプログラミングコンテストのための原則とパターン ODP
PPTX
OpenFlow OAM ツール - OKINAWA Open Days 2014 Day1 Similar to アルゴリズム+データ構造勉強会(1)
PPT
PPTX
PDF
PPT
PPT
PDF
PPT
PPT
PPT
PDF
PDF
PDF
PDF
programming camp 2008, introduction of programming, algorithm PDF
PDF
PDF
PDF
PDF
PDF
PPT
More from noldor
PDF
Code igniterを初めて使うときにはまった4つのポイント(ノーマル版) PDF
PDF
PDF
PDF
PDF
PDF
PDF
Code igniterを初めて使うときにはまった4つのポイント Recently uploaded
PDF
2025→2026宙畑ゆく年くる年レポート_100社を超える企業アンケート総まとめ!!_企業まとめ_1229_3版 PDF
Starlink Direct-to-Cell (D2C) 技術の概要と将来の展望 PDF
ST2024_PM1_2_Case_study_of_local_newspaper_company.pdf PDF
Team Topology Adaptive Organizational Design for Rapid Delivery of Valuable S... PDF
第21回 Gen AI 勉強会「NotebookLMで60ページ超の スライドを作成してみた」 PDF
100年後の知財業界-生成AIスライドアドリブプレゼン イーパテントYouTube配信 PDF
Reiwa 7 IT Strategist Afternoon I Question-1 Ansoff's Growth Vector PDF
自転車ユーザ参加型路面画像センシングによる点字ブロック検出における性能向上方法の模索 (20260123 SeMI研) PDF
Reiwa 7 IT Strategist Afternoon I Question-1 3C Analysis PDF
FY2025 IT Strategist Afternoon I Question-1 Balanced Scorecard PDF
PMBOK 7th Edition_Project Management Process_WF Type Development PDF
PMBOK 7th Edition Project Management Process Scrum PDF
PMBOK 7th Edition_Project Management Context Diagram アルゴリズム+データ構造勉強会(1)
- 1.
- 2.
- 3.
15回の内容
• 第1回. 整列とは • 第9回. 配列(リスト・スタック・待ち行列)
• 第2回. バブルソート • 第10回. リングバッファ
• 第3回. 選択ソート • 第11回. 木構造
• 第4回. クイックソート • 第12回. 木構造(2)
• 第5回. マージソート • 第13回. 二分探索木
• 第6回. 分布数え上げソート • 第14回. バックトラック法
• 第7回. 基数ソート • 第15回. バックトラック法(2)
• 第8回. usort()を使ったソート
- 4.
アルゴリズム+データ構造 とは
• ニクラウス・ヴィルトの書籍名
「アルゴリズム+データ構造=プログラム」
• アルゴリズム=処理手順
• データ構造=データの持ち方
• 「PHPを覚えたのにプログラムできない」
• 「英語覚えたのにコミュニケーションできない」にさも似たり
• 文法がわかっていても使い方をわかっていない
• アルゴリズムとデータ構造がわかればプログラムを書ける
- 5.
- 6.
- 7.
ソートの種類(1) データを持つ場所
• 内部整列:主記憶(メモリ)上でソートする
• ランダムアクセスができる
• =データ構造に自由度がある
• =速いアルゴリズムを組める
• メモリ上にある=がんばっても数GBまで(昔は数MBまで)
• 外部整列:外部記憶(ディスク)上でソートする
• シーケンシャルアクセスになる
• =データ構造に制限がある
• =遅いアルゴリズムになりがち
• ディスク上にある=容量がいっぱい
- 8.
ソートの種類(2) 汎用性
• 比較による整列
• 大小を比較して交換をする
• 汎用的に使える
• 計算量はO(n log n)が最小
• 比較によらない整列
• 大小を比較しない整列
• データの特殊性を利用する
• 例)テストの点数は0~100点の整数101種類しかなく、件数は生徒数×教科数だけ
• 計算量はO(n)が可能
- 9.
- 10.
- 11.
ソート関数
• PHPにはすでに用意されている
•sort()
• 他言語でも同様
• Linuxにもsortコマンド
• ほとんどの用途に使えて、自分で作るより高速
• 中身はクイックソート(最速の汎用ソートアルゴリズム)
• 普段はこれを使おう
• これでダメなときはソートの種類を吟味して自作する
• この勉強会の第7回までは「勉強のために」自分で作っていきます
- 12.
- 13.
- 14.