<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>算法 on 庞玉栋个人博客</title><link>https://pangyd.com/tags/%E7%AE%97%E6%B3%95/</link><description>Recent content in 算法 on 庞玉栋个人博客</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Tue, 31 Oct 2017 18:26:05 +0800</lastBuildDate><atom:link href="https://pangyd.com/tags/%E7%AE%97%E6%B3%95/index.xml" rel="self" type="application/rss+xml"/><item><title>Java数据结构与算法</title><link>https://pangyd.com/post/151-java/</link><pubDate>Tue, 31 Oct 2017 18:25:34 +0800</pubDate><guid>https://pangyd.com/post/151-java/</guid><description>&lt;p>&lt;br>&lt;/p>&lt;div class="userinfo" data-reactid=".1jh8s1a0g74.1.0.0.0.1.1.0">&lt;span class="username" data-reactid=".1jh8s1a0g74.1.0.0.0.1.1.0.0">Cany&lt;/span>&lt;span class="male" data-reactid=".1jh8s1a0g74.1.0.0.0.1.1.0.1">&lt;/span>&lt;span data-reactid=".1jh8s1a0g74.1.0.0.0.1.1.0.2">&lt;span class="honour admin" data-reactid=".1jh8s1a0g74.1.0.0.0.1.1.0.2.$admin">大酋长&lt;/span>&lt;/span>&lt;/div>&lt;div class="content rich" data-reactid=".1jh8s1a0g74.1.0.0.0.1.1.1">&lt;p>&lt;span>刚学习数据结构与算法时，就被告知&lt;span>&amp;nbsp;“程序=算法+数据结构”&lt;/span>，而这段话来自于对点计算机科学家Niklaus Wirth在1976年出版的一本书的书名，后来这句话也成为计算机工作者之间流传的一句名言，小编也用惨痛的经历告诉大家这也是一个很重要的知识点。&lt;/span>&lt;/p>&lt;p>&lt;span>&amp;nbsp;&lt;/span>&lt;/p>&lt;p style="text-align: center">&lt;img data-s="300,640" data-type="jpeg" data-src="https://pangyd.com/uploads/2017/10/74c10f869f038762.jpg" data-copyright="0" class="" data-ratio="1.0909090909090908" data-w="110" src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='480' height='120'%3E%3Crect width='480' height='120' fill='%230E1012' stroke='%231B1E22'/%3E%3Ctext x='240' y='66' fill='%235C6069' font-family='monospace' font-size='13' text-anchor='middle'%3E%5B%E5%8E%9F%E5%9B%BE%E5%B7%B2%E5%A4%B1%E6%95%88%5D%3C/text%3E%3C/svg%3E" data-fail="0">&lt;/p>&lt;p>&lt;span>&lt;/span>&lt;br>&lt;/p>&lt;p>&lt;span>&lt;span>那么到底什么是数据结构和算法，数据结构算法又有什么用呢？&lt;/span>&lt;/span>&lt;/p>&lt;p>&lt;span>首先来说说什么是数据结构，直接上图&lt;/span>&lt;/p>&lt;p>&lt;span>&amp;nbsp;&lt;/span>&lt;/p>&lt;p>&lt;span>&lt;/span>&lt;/p>&lt;p style="text-align: center">&lt;img data-s="300,640" data-type="jpeg" data-src="https://pangyd.com/uploads/2017/10/74c10f869f038762.jpg" data-copyright="0" class="" data-ratio="0.59613196814562" data-w="879" src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='480' height='120'%3E%3Crect width='480' height='120' fill='%230E1012' stroke='%231B1E22'/%3E%3Ctext x='240' y='66' fill='%235C6069' font-family='monospace' font-size='13' text-anchor='middle'%3E%5B%E5%8E%9F%E5%9B%BE%E5%B7%B2%E5%A4%B1%E6%95%88%5D%3C/text%3E%3C/svg%3E" data-fail="0">&lt;/p>&lt;p>&lt;span>&lt;/span>&lt;br>&lt;/p>&lt;p>&lt;span>从图中我们可以很直观的看出数据结构涵盖的内容。&lt;/span>&lt;/p>&lt;p>&lt;span>&lt;br>&lt;/span>&lt;/p>&lt;p>&lt;span>算法的介绍就相对抽象了，百度百科给出的解释是&lt;/span>&lt;/p>&lt;p>&lt;span>&lt;br>&lt;/span>&lt;/p>&lt;p>&lt;span>算法是对特定问题求解步骤的一种描述，它是指令的有限序列，其中每一条指令表示一个或者多个操作。&lt;/span>&lt;/p>&lt;p>&lt;span>&lt;br>&lt;/span>&lt;/p>&lt;p>&lt;span>但是我们从他的特性来理解就会简单多了。&lt;span>算法主要有五个特性&lt;/span>&lt;/span>&lt;/p>&lt;p>&lt;span>&lt;br>&lt;/span>&lt;/p>&lt;p>&lt;span>· 有穷性：指令序列是有限的&lt;/span>&lt;/p>&lt;p>&lt;span>· 确定性：每条语句的含义明确，无二义性&lt;/span>&lt;/p>&lt;p>&lt;span>· 可行性：每条语句都应在有限的时间内完成&lt;/span>&lt;/p>&lt;p>&lt;span>· 输入：零个或者多个输入&lt;/span>&lt;/p>&lt;p>&lt;span>· 输出：一个或者多个输出&lt;/span>&lt;/p>&lt;p>&lt;span>&lt;br>&lt;/span>&lt;/p>&lt;p>&lt;span>&lt;/span>&lt;/p>&lt;p style="text-align: center">&lt;img data-s="300,640" data-type="jpeg" data-src="https://pangyd.com/uploads/2017/10/74c10f869f038762.jpg" data-copyright="0" class="" data-ratio="0.8" data-w="1280" width="328px" src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='480' height='120'%3E%3Crect width='480' height='120' fill='%230E1012' stroke='%231B1E22'/%3E%3Ctext x='240' y='66' fill='%235C6069' font-family='monospace' font-size='13' text-anchor='middle'%3E%5B%E5%8E%9F%E5%9B%BE%E5%B7%B2%E5%A4%B1%E6%95%88%5D%3C/text%3E%3C/svg%3E" data-fail="0">&lt;/p></description></item><item><title>Java数据结构与算法</title><link>https://pangyd.com/post/146-java/</link><pubDate>Thu, 26 Oct 2017 22:56:35 +0800</pubDate><guid>https://pangyd.com/post/146-java/</guid><description>&lt;p>&lt;span>刚学习数据结构与算法时，就被告知&lt;span>&amp;nbsp;“程序=算法+数据结构”&lt;/span>，而这段话来自于对点计算机科学家Niklaus Wirth在1976年出版的一本书的书名，后来这句话也成为计算机工作者之间流传的一句名言，小编也用惨痛的经历告诉大家这也是一个很重要的知识点。&lt;/span>&lt;/p>&lt;p>&lt;span>&amp;nbsp;&lt;/span>&lt;/p>&lt;p style="text-align: center">&lt;img data-s="300,640" data-type="jpeg" data-src="https://pangyd.com/uploads/2017/10/74c10f869f038762.jpg" data-copyright="0" class="" data-ratio="1.0909090909090908" data-w="110" src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='480' height='120'%3E%3Crect width='480' height='120' fill='%230E1012' stroke='%231B1E22'/%3E%3Ctext x='240' y='66' fill='%235C6069' font-family='monospace' font-size='13' text-anchor='middle'%3E%5B%E5%8E%9F%E5%9B%BE%E5%B7%B2%E5%A4%B1%E6%95%88%5D%3C/text%3E%3C/svg%3E" data-fail="0">&lt;/p>&lt;p>&lt;span>&lt;/span>&lt;br>&lt;/p>&lt;p>&lt;span>&lt;span>那么到底什么是数据结构和算法，数据结构算法又有什么用呢？&lt;/span>&lt;/span>&lt;/p>&lt;p>&lt;span>首先来说说什么是数据结构，直接上图&lt;/span>&lt;/p>&lt;p>&lt;span>&amp;nbsp;&lt;/span>&lt;/p>&lt;p>&lt;span>&lt;/span>&lt;/p>&lt;p style="text-align: center">&lt;img data-s="300,640" data-type="jpeg" data-src="https://pangyd.com/uploads/2017/10/74c10f869f038762.jpg" data-copyright="0" class="" data-ratio="0.59613196814562" data-w="879" src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='480' height='120'%3E%3Crect width='480' height='120' fill='%230E1012' stroke='%231B1E22'/%3E%3Ctext x='240' y='66' fill='%235C6069' font-family='monospace' font-size='13' text-anchor='middle'%3E%5B%E5%8E%9F%E5%9B%BE%E5%B7%B2%E5%A4%B1%E6%95%88%5D%3C/text%3E%3C/svg%3E" data-fail="0">&lt;/p>&lt;p>&lt;span>&lt;/span>&lt;br>&lt;/p>&lt;p>&lt;span>从图中我们可以很直观的看出数据结构涵盖的内容。&lt;/span>&lt;/p>&lt;p>&lt;span>&lt;br>&lt;/span>&lt;/p>&lt;p>&lt;span>算法的介绍就相对抽象了，百度百科给出的解释是&lt;/span>&lt;/p>&lt;p>&lt;span>&lt;br>&lt;/span>&lt;/p>&lt;p>&lt;span>算法是对特定问题求解步骤的一种描述，它是指令的有限序列，其中每一条指令表示一个或者多个操作。&lt;/span>&lt;/p>&lt;p>&lt;span>&lt;br>&lt;/span>&lt;/p>&lt;p>&lt;span>但是我们从他的特性来理解就会简单多了。&lt;span>算法主要有五个特性&lt;/span>&lt;/span>&lt;/p>&lt;p>&lt;span>&lt;br>&lt;/span>&lt;/p>&lt;p>&lt;span>· 有穷性：指令序列是有限的&lt;/span>&lt;/p>&lt;p>&lt;span>· 确定性：每条语句的含义明确，无二义性&lt;/span>&lt;/p>&lt;p>&lt;span>· 可行性：每条语句都应在有限的时间内完成&lt;/span>&lt;/p>&lt;p>&lt;span>· 输入：零个或者多个输入&lt;/span>&lt;/p>&lt;p>&lt;span>· 输出：一个或者多个输出&lt;/span>&lt;/p>&lt;p>&lt;span>&lt;br>&lt;/span>&lt;/p>&lt;p>&lt;span>&lt;/span>&lt;/p>&lt;p style="text-align: center">&lt;img data-s="300,640" data-type="jpeg" data-src="https://pangyd.com/uploads/2017/10/74c10f869f038762.jpg" data-copyright="0" class="" data-ratio="0.8" data-w="1280" width="328px" src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='480' height='120'%3E%3Crect width='480' height='120' fill='%230E1012' stroke='%231B1E22'/%3E%3Ctext x='240' y='66' fill='%235C6069' font-family='monospace' font-size='13' text-anchor='middle'%3E%5B%E5%8E%9F%E5%9B%BE%E5%B7%B2%E5%A4%B1%E6%95%88%5D%3C/text%3E%3C/svg%3E" data-fail="0">&lt;/p>&lt;p>&lt;span>&lt;/span>&lt;br>&lt;/p>&lt;p>&lt;span>说到数据结构算法的用处，当你用着java容器类很爽的时候，你有没有想过，怎么ArrayList像一个无限扩充的数组，也好像一个链表。好用吗？当然好用这就是数据结构的用处，只不过你在不知不觉中使用了。&lt;/span>&lt;/p>&lt;p>&lt;span>&lt;br>&lt;/span>&lt;/p>&lt;p>&lt;span>用于现实世界的存储，我们使用的工具和建模。每种数据结构有自己的优点和缺点，想想如果Google的数据用的是数组的存储，我们还能方便地查询到所需要的数据吗。&lt;/span>&lt;/p>&lt;p>&lt;span>&lt;br>&lt;/span>&lt;/p></description></item></channel></rss>