<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	
	xmlns:georss="http://www.georss.org/georss"
	xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
	>

<channel>
	<title>データ構造  |  AboeBlog</title>
	<atom:link href="https://aboeblog.com/tag/data/feed/" rel="self" type="application/rss+xml" />
	<link>https://aboeblog.com</link>
	<description>全日本人プログラミング可能計画</description>
	<lastBuildDate>Tue, 27 Oct 2020 14:07:32 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=5.5.7</generator>
	<atom:link rel='hub' href='https://aboeblog.com/?pushpress=hub'/>
<site xmlns="com-wordpress:feed-additions:1">139919897</site>	<item>
		<title>関数のオーダ記法を分かりやすくまとめてみた</title>
		<link>https://aboeblog.com/%e5%8b%89%e5%bc%b7/math/%e9%96%a2%e6%95%b0%e3%81%ae%e3%82%aa%e3%83%bc%e3%83%80%e8%a8%98%e6%b3%95%e3%82%92%e5%88%86%e3%81%8b%e3%82%8a%e3%82%84%e3%81%99%e3%81%8f%e3%81%be%e3%81%a8%e3%82%81%e3%81%a6%e3%81%bf%e3%81%9f/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e9%2596%25a2%25e6%2595%25b0%25e3%2581%25ae%25e3%2582%25aa%25e3%2583%25bc%25e3%2583%2580%25e8%25a8%2598%25e6%25b3%2595%25e3%2582%2592%25e5%2588%2586%25e3%2581%258b%25e3%2582%258a%25e3%2582%2584%25e3%2581%2599%25e3%2581%258f%25e3%2581%25be%25e3%2581%25a8%25e3%2582%2581%25e3%2581%25a6%25e3%2581%25bf%25e3%2581%259f</link>
					<comments>https://aboeblog.com/%e5%8b%89%e5%bc%b7/math/%e9%96%a2%e6%95%b0%e3%81%ae%e3%82%aa%e3%83%bc%e3%83%80%e8%a8%98%e6%b3%95%e3%82%92%e5%88%86%e3%81%8b%e3%82%8a%e3%82%84%e3%81%99%e3%81%8f%e3%81%be%e3%81%a8%e3%82%81%e3%81%a6%e3%81%bf%e3%81%9f/#respond</comments>
		
		<dc:creator><![CDATA[aboeuser]]></dc:creator>
		<pubDate>Wed, 13 Dec 2017 13:27:15 +0000</pubDate>
				<category><![CDATA[数学]]></category>
		<category><![CDATA[データ構造]]></category>
		<guid isPermaLink="false">http://aboeblog.com/?p=74</guid>

					<description><![CDATA[どうもみなさんこんにちは！最近お外が寒すぎて、外に出ると必ず耳と頭が痛くなるフジワラです。 &#160; 今回は、テスト勉強と、オーダ記法が分からないよぉ～ ふぇぇ～な友達のためにわかりやすくオーダ記法を開設したいと思い [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>どうもみなさんこんにちは！最近お外が寒すぎて、外に出ると必ず耳と頭が痛くなるフジワラです。</p>
<p>&nbsp;</p>
<p>今回は、テスト勉強と、オーダ記法が分からないよぉ～ ふぇぇ～な友達のためにわかりやすくオーダ記法を開設したいと思います。（<del>ふぇぇ～言うやつは大体オタク</del></p>
<p>主に、数学ではなく情報工学の内容です。</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<ol>
<li>オーダ記法ってそもそも何？</li>
<li>オーダ記法活用の場所</li>
<li>オーダ記法の具体的な書きかた</li>
<li>オーダ記法の練習問題</li>
</ol>
<p>注意：間違ってるかもしれませんので鵜呑みにしないでください責任は取りかねますm(_)m</p>

  <div id="toc" class="toc tnt-number toc-center border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">オーダ記法ってそもそも何？</a></li><li><a href="#toc2" tabindex="0">オーダ記法活用の場所</a></li><li><a href="#toc3" tabindex="0">オーダ記法の具体的な書きかた</a><ol><li><a href="#toc4" tabindex="0">1.\(T(n)=O(f(n))\)の意味</a></li><li><a href="#toc5" tabindex="0">2.\(T(n)=\Omega(f(n))\)</a></li><li><a href="#toc6" tabindex="0">3.\(T(n)=\Theta(f(n))\)</a></li></ol></li><li><a href="#toc7" tabindex="0">時間計算量でよく出てくる関数</a></li><li><a href="#toc8" tabindex="0">どんなアルゴリズムがいいとされるの?</a></li></ol>
    </div>
  </div>

<h2><span id="toc1">オーダ記法ってそもそも何？</span></h2>
<p>今回は、無限大での場合だけで考えます。</p>
<p>オーダ記法というのは、計算量などの上下界を評価するときにつかいます。</p>
<p>これだけだとよくわからないと思うので、イメージとしては、nこの処理をするのに、n+100時間、かかるプログラムがあるとすると、ｎが∞個の処理をしようとしたときにかかる時間はだいたい、n時間、処理に時間がかかるっていうことです。(数学の極限です。nが無限大になったときは、100を無視しても構わないというやつです。)</p>
<p>この、「n+100時間かかる処理は、n時間で近似して評価できる」というのが、オーダ記法です。</p>
<p>&nbsp;</p>
<h2><span id="toc2">オーダ記法活用の場所</span></h2>
<p>主に、情報工学の分野でアルゴリズムの計算量を評価するときに使います。</p>
<p>特に、アルゴリズムでは、時間計算量と領域計算量があって、最近はパソコンの性能がものすごく上がったので、<span class="red-under">領域計算量</span>よりも<span class="red-under">時間計算量</span>のほうが圧倒的に重視されています。</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<h2><span id="toc3">オーダ記法の具体的な書きかた</span></h2>
<p>まず、オーダ記法には3種類の数式があります。</p>
<p>&nbsp;</p>
<ol>
<li>\(T(n)=O(f(n))\)</li>
<li>\(T(n)=\Omega(f(n))\)</li>
<li>\(T(n)=\Theta(f(n))\)</li>
</ol>
<h3><span id="toc4">1.\(T(n)=O(f(n))\)の意味</span></h3>
<p>\(O(f(n))\)の読み方は、「オーダf(n)」です。</p>
<p>では、</p>
<p>\(T(n)=O(f(n))\)の意味は\(T(n)\)の発散の速度はだいたい\(f(n)\)と同じくらいという意味です。例:\(n^5+n+8=O(n^5+n)\)といった感じ。</p>
<p>詳しくは</p>
<p>\(T(n)=O(f(n))\Leftrightarrow  \exists n_0 , c(&gt;0) , s.t. \forall n \geq n_0 , T(n) \leq cf(n)\)</p>
<p>です。</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<h3><span id="toc5">2.\(T(n)=\Omega(f(n))\)</span></h3>
<p>\(\Omega(f(n))\)の読み方は、「オメガf(n)」です。</p>
<p>\(T(n)=\Omega(f(n))\)の意味は\(T(n)\)の発散の速度はだいたい\(f(n)\)と同じくらいという意味です。例:\(n^5+n+8=\Omega(n^5)\),\(n^5+8=\Omega(n^4)\)といった感じ。</p>
<p>詳しくは、\(T(n)=O(f(n))\Leftrightarrow  \exists n_0 , c(&gt;0) , s.t. \forall n \geq n_0 , cf(n) \leq T(n) \)</p>
<p>&nbsp;</p>
<h3><span id="toc6">3.\(T(n)=\Theta(f(n))\)</span></h3>
<p>\(\Theta(f(n))\)の読み方は、「シータf(n)」です。</p>
<p>\(T(n)=\Theta(f(n))\)の意味はT(n)の発散速度はだいたいf(n)と同じくらいという意味です。</p>
<p>&nbsp;</p>
<p>詳しくは、\(T(n)=￥Theta(f(n))\Leftrightarrow  T(n)=O(f(n)) かつ T(n)=\Omega(f(n)) \) です。</p>
<p>&nbsp;</p>
<h2><span id="toc7">時間計算量でよく出てくる関数</span></h2>
<p>上記の、オーダ、オメガ、シータと、\(n, n^2, n^3, n\log n, \sqrt{n}, \log{2}n\)などがよく時間計算量を評価するときに使われます。</p>
<p>&nbsp;</p>
<p>一般的に、現代のPCは性能が昔の何千何万倍と違うので、領域量はほとんど気にされません。</p>
<p>圧倒的に、時間計算量が重視されます!!</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<h2><span id="toc8">どんなアルゴリズムがいいとされるの?</span></h2>
<p>ざっくりまとめると\(O(n^k)\) (kは定数)の形で表されるものがいいです。</p>
<p>\(O(k^n)\)のように(kは定数)指数関数的に増えていくアルゴリズムはよろしくありません。</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>次回は、基本的なデータ構造についてまとめます。</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>https://aboeblog.com/%e5%8b%89%e5%bc%b7/math/%e9%96%a2%e6%95%b0%e3%81%ae%e3%82%aa%e3%83%bc%e3%83%80%e8%a8%98%e6%b3%95%e3%82%92%e5%88%86%e3%81%8b%e3%82%8a%e3%82%84%e3%81%99%e3%81%8f%e3%81%be%e3%81%a8%e3%82%81%e3%81%a6%e3%81%bf%e3%81%9f/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">74</post-id>	</item>
	</channel>
</rss>
