<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>NotionNext BLOG</title>
        <link>https://www.zhangsanpyq.top/</link>
        <description>这是一个由NotionNext生成的站点</description>
        <lastBuildDate>Wed, 17 Apr 2024 08:38:38 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>zh-CN</language>
        <copyright>All rights reserved 2024, Zhangsan</copyright>
        <item>
            <title><![CDATA[动态规划算法的理解]]></title>
            <link>https://www.zhangsanpyq.top/article/动态规划</link>
            <guid>https://www.zhangsanpyq.top/article/动态规划</guid>
            <pubDate>Wed, 29 Nov 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[• 什么是动态规划？
• 动态规划的核心思想
• 一个例子走进动态规划
• 动态规划的解题套路
• leetcode案例分析。]]></description>
            <content:encoded><![CDATA[<div id="notion-article" class="mx-auto overflow-hidden "><main class="notion light-mode notion-page notion-block-75cf2de5a6a4458aa86c3b49a592d8f3"><div class="notion-viewport"></div><div class="notion-collection-page-properties"></div><h2 class="notion-h notion-h1 notion-h-indent-0 notion-block-0374cc7d05b04a4b81f39a987dd4bdd2" data-id="0374cc7d05b04a4b81f39a987dd4bdd2"><span><div id="0374cc7d05b04a4b81f39a987dd4bdd2" class="notion-header-anchor"></div><a class="notion-hash-link" href="#0374cc7d05b04a4b81f39a987dd4bdd2" title="什么是动态规划？"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b><b>什么是动态规划？</b></b></span></span></h2><div class="notion-blank notion-block-79a568095f564a8281e1897e100e80ee"> </div><blockquote class="notion-quote notion-block-3a27372470eb483b9880e85afeb30a4a"><div>         动态规划（Dynamic programming，简称 DP），是一种在数学、管理科学、计算机科学、经济学和生物信息学中使用的，通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。动态规划常常适用于有重叠子问题和最优子结构性质的问题。</div></blockquote><div class="notion-callout notion-gray_background_co notion-block-528c8f5228754262a5a91fc725c5cc02"><div class="notion-page-icon-inline notion-page-icon-span"><span class="notion-page-icon" role="img" aria-label="💡">💡</span></div><div class="notion-callout-text">“dynamic programming is a method for solving a complex problem by breaking it down into a collection of simpler subproblems.”</div></div><div class="notion-text notion-block-11ff2606be60411c81940e2fe22a55b5">          简单来说，动态规划其实就是，给定一个问题，我们把它拆成一个个子问题，直到子问题可以直接解决。然后，把子问题答案保存起来，以减少重复计算。再根据子问题答案反推，得出原问题解。 一般这些子问题很相似，可以通过函数关系式递推出来。动态规划就致力于解决每个子问题一次，减少重复计算，比如斐波那契数列就可以看做入门级的经典动态规划问题。</div><h3 class="notion-h notion-h2 notion-h-indent-1 notion-block-be79152ba8fd43619041f1b45f809882" data-id="be79152ba8fd43619041f1b45f809882"><span><div id="be79152ba8fd43619041f1b45f809882" class="notion-header-anchor"></div><a class="notion-hash-link" href="#be79152ba8fd43619041f1b45f809882" title="动态规划核心思想"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b><b>动态规划核心思想</b></b></span></span></h3><div class="notion-text notion-block-169666e2c87b4c77a549c6d44545cb34">           动态规划最核心的思想，就在于<b>拆分子问题，记住过往，减少重复计算</b>。</div><div class="notion-text notion-block-f552b3be501c4c82af121bf3b449d7cb">下面是一个典型的例子：</div><ul class="notion-list notion-list-disc notion-block-a75ec2afcc794571b6c5b701a650f189"><li>A ： &quot;1+1+1+1+1+1+1+1 =？&quot;</li></ul><ul class="notion-list notion-list-disc notion-block-84eb32c1a7ea42888375d3dcaa975837"><li>A ： &quot;上面等式的值是多少&quot;</li></ul><ul class="notion-list notion-list-disc notion-block-e4fb934d0da347209a453f4f584fb8bb"><li>B ： 计算 &quot;8&quot;</li></ul><ul class="notion-list notion-list-disc notion-block-e677074bb497400fa008c6219f2cc0b3"><li>A : 在上面等式的左边写上 &quot;1+&quot; 呢？</li></ul><ul class="notion-list notion-list-disc notion-block-46b3dde2f803406893c651bd026a4b44"><li>A : &quot;此时等式的值为多少&quot;</li></ul><ul class="notion-list notion-list-disc notion-block-675fb8b4fe0c4fbf9047db694bdc808b"><li>B : 很快得出答案 &quot;9&quot;</li></ul><ul class="notion-list notion-list-disc notion-block-54715199991d4f369f8604dd3ce43691"><li>A : &quot;你怎么这么快就知道答案了&quot;</li></ul><ul class="notion-list notion-list-disc notion-block-fc3811c454de4b9a9606f883ab4d9c57"><li>A : &quot;只要在8的基础上加1就行了&quot;</li></ul><ul class="notion-list notion-list-disc notion-block-d45d069390914696bb88c0fae93cd455"><li>A : &quot;所以你不用重新计算，因为你记住了第一个等式的值为8!动态规划算法也可以说是 &#x27;记住求过的解来节省时间&quot;</li></ul><figure class="notion-asset-wrapper notion-asset-wrapper-image notion-block-eeb7b6fa18c94e838bce24e572268010"><div style="position:relative;display:flex;justify-content:center;align-self:center;width:200px;max-width:100%;flex-direction:column"><img style="object-fit:cover" src="https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F315fcc5e-7b64-4ffc-b937-fe29e0be249f%2Fc3a53121-1105-4133-947c-f9026d8936b8%2F%25E9%25B2%2581%25E8%25BF%2585%25E5%2590%258D%25E8%25A8%2580.png?table=block&amp;id=eeb7b6fa-18c9-4e83-8bce-24e572268010&amp;t=eeb7b6fa-18c9-4e83-8bce-24e572268010&amp;width=200&amp;cache=v2" alt="notion image" loading="lazy" decoding="async"/></div></figure><h2 class="notion-h notion-h1 notion-h-indent-0 notion-block-f0512846cdd54f7bbc19d728a0518a87" data-id="f0512846cdd54f7bbc19d728a0518a87"><span><div id="f0512846cdd54f7bbc19d728a0518a87" class="notion-header-anchor"></div><a class="notion-hash-link" href="#f0512846cdd54f7bbc19d728a0518a87" title="一个例子走进动态规划 -- 青蛙跳阶问题"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b><b>一个例子走进动态规划 -- 青蛙跳阶问题</b></b></span></span></h2><div class="notion-text notion-block-f76a9ae6e0e943d4909b40b407d8abe0"><b>            一只青蛙一次可以跳上1级台阶，也可以跳上2级台阶。求该青蛙跳上一个 10 级的台阶总共有多少种跳法</b>。</div><div class="notion-text notion-block-093f0d112ea4413cb85588fba22893e2"><b>解题思路：</b></div><ul class="notion-list notion-list-disc notion-block-55294dbc6a6a4ee9ac10144e0a61bafc"><li>要想跳到第10级台阶，要么是先跳到第9级，然后再跳1级台阶上去;要么是先跳到第8级，然后一次迈2级台阶上去。</li></ul><ul class="notion-list notion-list-disc notion-block-70e1be4302be4deeab0cce0c3f6bbe15"><li>同理，要想跳到第9级台阶，要么是先跳到第8级，然后再跳1级台阶上去;要么是先跳到第7级，然后一次迈2级台阶上去。</li></ul><ul class="notion-list notion-list-disc notion-block-b0ffe0a6255f4fdb9f72b8fac43150fc"><li>要想跳到第8级台阶，要么是先跳到第7级，然后再跳1级台阶上去;要么是先跳到第6级，然后一次迈2级台阶上去。</li></ul><ul class="notion-list notion-list-disc notion-block-0913cb778c4b4dd09b70e50bb690cf65"><li>……总结即为：</li></ul><ul class="notion-list notion-list-disc notion-block-133cf0a434ef4d44851544bee45b22a7"><li>当只有2级台阶时，有两种跳法，第一种是直接跳两级，第二种是先跳一级，然后再跳一级。即f(2) = 2;</li></ul><ul class="notion-list notion-list-disc notion-block-fa546626e1c44c109a44dbc6b1bef008"><li>当只有1级台阶时，只有一种跳法，即f（1）= 1；</li></ul><h3 class="notion-h notion-h2 notion-h-indent-1 notion-block-5b8fa355eb9349e78e4c680101325927" data-id="5b8fa355eb9349e78e4c680101325927"><span><div id="5b8fa355eb9349e78e4c680101325927" class="notion-header-anchor"></div><a class="notion-hash-link" href="#5b8fa355eb9349e78e4c680101325927" title="暴力递归"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b><b>暴力递归</b></b></span></span></h3><div class="notion-text notion-block-ead81c1d650648088558b8e94e2d3ca8"> 用递归去解决这个问题：</div><div class="notion-text notion-block-2c42c446a19d4ad0b6d095af0cb5ffa8">但是，发现，真的很慢&gt;_&lt;</div><figure class="notion-asset-wrapper notion-asset-wrapper-image notion-block-e1ebcb5f4f3d4df7a3cbb49a95272119"><div style="position:relative;display:flex;justify-content:center;align-self:center;width:150px;max-width:100%;flex-direction:column"><img style="object-fit:cover" src="https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F315fcc5e-7b64-4ffc-b937-fe29e0be249f%2F77108915-e608-473f-b20a-36edbe63de55%2F%25E6%2585%25A2.gif?table=block&amp;id=e1ebcb5f-4f3d-4df7-a3cb-b49a95272119&amp;t=e1ebcb5f-4f3d-4df7-a3cb-b49a95272119&amp;width=150&amp;cache=v2" alt="notion image" loading="lazy" decoding="async"/></div></figure><div class="notion-text notion-block-6572bbda3b5645bd8481367531346d05">原因在于采用递归算法时存在大量重复计算，比如f（8）被计算了两次，f（7）被重复计算了3次...所以这就是递归算法低效的原因，即<b>存在大量的重复计算</b>！</div><div class="notion-text notion-block-1ed7f914fcdb4bdbb05c6a84ca72e5aa">那能否对递归进行一点修改呢？</div><h3 class="notion-h notion-h2 notion-h-indent-1 notion-block-585cadf028a240d5b18b635c2fa0c852" data-id="585cadf028a240d5b18b635c2fa0c852"><span><div id="585cadf028a240d5b18b635c2fa0c852" class="notion-header-anchor"></div><a class="notion-hash-link" href="#585cadf028a240d5b18b635c2fa0c852" title="带备忘录的递归解法（自顶向下）"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">带备忘录的递归解法（自顶向下）</span></span></h3><div class="notion-text notion-block-73b4ed85f18244a9ac496db32336415e">一般使用一个数组或者一个哈希map充当这个<b>备忘录</b>。</div><div class="notion-text notion-block-773b1b6008934493b142ea9bad55cee3"><b>第一步</b>，f（10）= f(9) + f(8)，f(9) 和f（8）都需要计算出来，然后再加到备忘录中；</div><div class="notion-text notion-block-02fdec08b0e34aafa047e53e97c24f85"><b>第二步</b>， f(9) = f（8）+ f（7），f（8）= f（7）+ f(6), 因为 f(8) 已经在备忘录中啦，所以可以省掉，f(7),f（6）都需要计算出来，加到备忘录中；</div><div class="notion-text notion-block-1409cbfb2cd84e1a919f7b274cbb0e03"><b>第三步</b>， f(8) = f（7）+ f(6),发现f(8)，f(7),f（6）全部都在备忘录上了，所以都可以剪掉；</div><div class="notion-text notion-block-20e07140ae8943c78ac02dbe2f3cadd7">……</div><div class="notion-text notion-block-c46deca9cb994a5f83c2c080efd5b967">带<b>备忘录</b>的递归算法，子问题个数=树节点数=n，解决一个子问题时间为一个加法的消耗，即为O(1),所以带<b>备忘录</b>的递归算法的时间复杂度是O(n)，空间复杂度为O(n)。示例代码如下：</div><h3 class="notion-h notion-h2 notion-h-indent-1 notion-block-23d641c9c5354cf9a78de05c322bc628" data-id="23d641c9c5354cf9a78de05c322bc628"><span><div id="23d641c9c5354cf9a78de05c322bc628" class="notion-header-anchor"></div><a class="notion-hash-link" href="#23d641c9c5354cf9a78de05c322bc628" title="自底向上的动态规划"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b><b>自底向上的动态规划</b></b></span></span></h3><div class="notion-text notion-block-92ecafbf17b740119b3ebe2453158368">动态规划跟带备忘录的递归解法基本思想是一致的，都是减少重复计算，时间复杂度也都是差不多。动态规划跟带备忘录的递归解法基本思想是一致的，都是减少重复计算，时间复杂度也都是差不多。不过两者的思路有所区别：</div><ul class="notion-list notion-list-disc notion-block-6227e4769ca84473aeb2295dc45386dc"><li>带备忘录的递归，是从f(10)往f(1）方向延伸求解的，所以也称为<b>自顶向下</b>的解法。</li></ul><ul class="notion-list notion-list-disc notion-block-43ad0a66debf436d9c0d8a89d03daeaa"><li>动态规划从较小问题的解，由交叠性质，逐步决策出较大问题的解，它是从f(1)往f(10）方向，往上推求解，所以称为<b>自底向上</b>的解法。</li></ul><div class="notion-text notion-block-0df8c756d33c49b882c47beb79260369">动态规划有几个典型特征，<b>最优子结构、状态转移方程、边界、重叠子问题</b>。在青蛙跳阶问题中：</div><ul class="notion-list notion-list-disc notion-block-2ab0fd0dc0e74242b5251a0b4bcab435"><li>f(n-1)和f(n-2) 称为 f(n) 的最优子结构</li></ul><ul class="notion-list notion-list-disc notion-block-c96b5a3d9d624fcaac784b947a26f2d7"><li>f(n)= f（n-1）+f（n-2）就称为状态转移方程</li></ul><ul class="notion-list notion-list-disc notion-block-4b63a5a4dbba418082fd8021c46e1212"><li>f(1) = 1, f(2) = 2 就是边界</li></ul><ul class="notion-list notion-list-disc notion-block-07af91b66eff4e83921637b02e9bc2f8"><li>比如f(10)= f(9)+f(8),f(9) = f(8) + f(7) ,f(8)就是重叠子问题。</li></ul><div class="notion-text notion-block-44a94ded91464d53b870d0eadbff3dba">带备忘录的递归解法，空间复杂度是O(n)，而递归算法的f（n）只依赖前面两个数，所以只需要两个变量a和b来存储，就可以满足需求，因此空间复杂度是O(1)。</div><h2 class="notion-h notion-h1 notion-h-indent-0 notion-block-1baaeb1dfc984e1fad3427dc4aa26e06" data-id="1baaeb1dfc984e1fad3427dc4aa26e06"><span><div id="1baaeb1dfc984e1fad3427dc4aa26e06" class="notion-header-anchor"></div><a class="notion-hash-link" href="#1baaeb1dfc984e1fad3427dc4aa26e06" title="动态规划的一般解题思路"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b>动态规划的一般解题思路</b></span></span></h2><div class="notion-text notion-block-1128874673424ceb8a3ebf3580bdcf65">如果一个问题，可以把所有可能的答案穷举出来，并且穷举出来后，发现存在重叠子问题，就可以考虑使用动态规划。</div><div class="notion-text notion-block-0e6dce09c1944b69ac305df07569471a">比如一些求最值的场景，如<b>最长递增子序列、最小编辑距离、背包问题、凑零钱问题</b>等等，都是动态规划的经典应用场景。</div><h3 class="notion-h notion-h2 notion-h-indent-1 notion-block-ba7fcef090f249ab93f5c76ecd7817df" data-id="ba7fcef090f249ab93f5c76ecd7817df"><span><div id="ba7fcef090f249ab93f5c76ecd7817df" class="notion-header-anchor"></div><a class="notion-hash-link" href="#ba7fcef090f249ab93f5c76ecd7817df" title="动态规划的解题思路"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b><b>动态规划的解题思路</b></b></span></span></h3><div class="notion-text notion-block-f47db04fb4794d06a2f12ead607ec56b">动态规划的核心思想就是<b>拆分子问题，记住过往，减少重复计算。</b> 并且动态规划一般都是自<b>底向上</b>的，基于<b>青蛙跳阶</b>问题，动态规划的思路：</div><ul class="notion-list notion-list-disc notion-block-00c3802d545446a6a49419b13c7ccd83"><li>穷举分析</li></ul><ul class="notion-list notion-list-disc notion-block-5b0edcee9a0c47fcb0fcc06bf1b43a09"><li>确定边界</li></ul><ul class="notion-list notion-list-disc notion-block-b05867399d67495cac12373fbd1425af"><li>找出规律，确定最优子结构</li></ul><ul class="notion-list notion-list-disc notion-block-b45e6630f69b482f8c26263d785be7cd"><li>写出状态转移方程</li></ul><h4 class="notion-h notion-h3 notion-h-indent-2 notion-block-fa16911363c04984a59cfdc3ab0d746e" data-id="fa16911363c04984a59cfdc3ab0d746e"><span><div id="fa16911363c04984a59cfdc3ab0d746e" class="notion-header-anchor"></div><a class="notion-hash-link" href="#fa16911363c04984a59cfdc3ab0d746e" title="1. 穷举分析"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b><b>1. 穷举分析</b></b></span></span></h4><ul class="notion-list notion-list-disc notion-block-b94a518779184c938feae0d56e0a150b"><li>当台阶数是1的时候，有一种跳法，f（1） =1</li></ul><ul class="notion-list notion-list-disc notion-block-200a519fffb142d982078340d44ec1b4"><li>当只有2级台阶时，有两种跳法，第一种是直接跳两级，第二种是先跳一级，然后再跳一级。即f(2) = 2;</li></ul><ul class="notion-list notion-list-disc notion-block-d864c3ebca704b70b4a584b11b3e19d2"><li>当台阶是3级时，想跳到第3级台阶，要么是先跳到第2级，然后再跳1级台阶上去，要么是先跳到第 1级，然后一次迈 2 级台阶上去。所以f(3) = f(2) + f(1) =3……</li></ul><h4 class="notion-h notion-h3 notion-h-indent-2 notion-block-30072a57dc984e448f76d7352b020f06" data-id="30072a57dc984e448f76d7352b020f06"><span><div id="30072a57dc984e448f76d7352b020f06" class="notion-header-anchor"></div><a class="notion-hash-link" href="#30072a57dc984e448f76d7352b020f06" title="2. 确定边界"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b><b>2. 确定边界</b></b></span></span></h4><div class="notion-text notion-block-e941a2b9581548bbaabbe188322f011c">通过穷举分析，发现当台阶数是1的时候或者2的时候，可以明确知道青蛙跳法。f（1） =1，f(2) = 2，当台阶n&gt;=3时，已经呈现出规律f(3) = f(2) + f(1) =3，因此f（1） =1，f(2) = 2就是青蛙跳阶的边界。</div><h4 class="notion-h notion-h3 notion-h-indent-2 notion-block-cf21bbc3072a4dd286499643e2d066b1" data-id="cf21bbc3072a4dd286499643e2d066b1"><span><div id="cf21bbc3072a4dd286499643e2d066b1" class="notion-header-anchor"></div><a class="notion-hash-link" href="#cf21bbc3072a4dd286499643e2d066b1" title="3. 找规律，确定最优子结构"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b><b>3. 找规律，确定最优子结构</b></b></span></span></h4><blockquote class="notion-quote notion-block-50fbf5da3de64381a87319d980dd3805"><div>一道动态规划问题，其实就是一个递推问题。假设当前决策结果是f(n),则最优子结构就是要让 f(n-k) 最优,最优子结构性质就是能让转移到n的状态是最优的,并且与后面的决策没有关系,即让后面的决策安心地使用前面的局部最优解的一种性质</div></blockquote><div class="notion-text notion-block-a446dc386ec14a0ebc300a15c55caa7f">n&gt;=3时，已经呈现出规律 f(n) = f(n-1) + f(n-2) ，因此，f(n-1)和f(n-2) 称为 f(n) 的最优子结构。</div><h4 class="notion-h notion-h3 notion-h-indent-2 notion-block-d73e0797c1484dee87e56146160cb850" data-id="d73e0797c1484dee87e56146160cb850"><span><div id="d73e0797c1484dee87e56146160cb850" class="notion-header-anchor"></div><a class="notion-hash-link" href="#d73e0797c1484dee87e56146160cb850" title="4. 写出状态转移方程"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b><b>4. 写出状态转移方程</b></b></span></span></h4><div class="notion-text notion-block-ebd2482f96384b3b8adcbc70cf11ab56">穷举分析，确定边界，最优子结构，就可以得出状态转移方程：</div><figure class="notion-asset-wrapper notion-asset-wrapper-image notion-block-9f3791328813415d9a70bbb952880ba8"><div style="position:relative;display:flex;justify-content:center;align-self:center;width:452px;max-width:100%;flex-direction:column"><img style="object-fit:cover" src="https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F315fcc5e-7b64-4ffc-b937-fe29e0be249f%2Fde00fa46-24a7-4210-a2d0-3bc2f5cfc4e9%2F%25E7%258A%25B6%25E6%2580%2581%25E8%25BD%25AC%25E7%25A7%25BB_result.png?table=block&amp;id=9f379132-8813-415d-9a70-bbb952880ba8&amp;t=9f379132-8813-415d-9a70-bbb952880ba8&amp;width=452&amp;cache=v2" alt="notion image" loading="lazy" decoding="async"/></div></figure><h2 class="notion-h notion-h1 notion-h-indent-0 notion-block-e5c781c330724d2389b474cdb587b870" data-id="e5c781c330724d2389b474cdb587b870"><span><div id="e5c781c330724d2389b474cdb587b870" class="notion-header-anchor"></div><a class="notion-hash-link" href="#e5c781c330724d2389b474cdb587b870" title="leetcode案例分析"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b><b>leetcode案例分析</b></b></span></span></h2><div class="notion-text notion-block-e9f98a52ca6b4c3ca488d310a5eb8cf6">来看一道经典的leetcode题目：</div><div class="notion-text notion-block-bd4d11e2265d440286eb9a8d300e14e9">假设你正在爬楼梯。需要 <code class="notion-inline-code">n</code> 阶你才能到达楼顶。</div><div class="notion-text notion-block-da4c28269f4f40b0b4eb34b74caae511">每次你可以爬 <code class="notion-inline-code">1</code> 或 <code class="notion-inline-code">2</code> 个台阶。你有多少种不同的方法可以爬到楼顶呢？</div><div class="notion-text notion-block-a972b20103f7478388f335ba7f46e918"><b>示例 1：</b></div><div class="notion-text notion-block-572d7885376e4423a3c523688f782448"><b>示例 2：</b></div><div class="notion-text notion-block-c0a954e3a1ab490f9720b3202af82711"><b>提示：</b></div><ul class="notion-list notion-list-disc notion-block-52947cea2faf42c2b1fa28140e027796"><li><code class="notion-inline-code">1 &lt;= n &lt;= 45</code></li></ul><div class="notion-text notion-block-b824cf354e2e4e1aa1c502cf1b15e919">这个题目和本质就是青蛙跳楼梯，来看看有哪些解法</div><h3 class="notion-h notion-h2 notion-h-indent-1 notion-block-d84a4bba14fc4601b06be077a80b4b01" data-id="d84a4bba14fc4601b06be077a80b4b01"><span><div id="d84a4bba14fc4601b06be077a80b4b01" class="notion-header-anchor"></div><a class="notion-hash-link" href="#d84a4bba14fc4601b06be077a80b4b01" title="方法一：动态规划"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b><b>方法一：动态规划</b></b></span></span></h3><div class="notion-text notion-block-77005c993b8d442a915b868ce2afe147">用f(x) 表示爬到第 x 级台阶的方案数，考虑最后一步可能跨了一级台阶，也可能跨了两级台阶，所以我们可以列出如下式子：</div><div class="notion-text notion-block-1e44b45c90fc4adc95124f5f8d486513">f(x)=f(x−1)+f(x−2)</div><div class="notion-text notion-block-80a9b4f74c33427d85e41f4b2ed8dc52">用「<b>滚动数组思想</b>」把空间复杂度优化成 O(1)。下面的代码中给出的就是这种实现<b>。</b></div><div class="notion-text notion-block-35cb7eacec5440f081f3b09340af760d"><b>复杂度分析</b></div><div class="notion-text notion-block-bc5353a93abf4ee08a143a253d82bd14"><b>时间复杂度</b>：循环执行 n 次，每次花费常数的时间代价，故渐进时间复杂度为 O(n)。
<b>空间复杂度</b>：这里只用了常数个变量作为辅助空间，故渐进空间复杂度为 O(1)。</div><div class="notion-text notion-block-36761784660d442e84fa21836dd3fa9d">u</div><h3 class="notion-h notion-h2 notion-h-indent-1 notion-block-853c72a7a048467581f0c09088e74fde" data-id="853c72a7a048467581f0c09088e74fde"><span><div id="853c72a7a048467581f0c09088e74fde" class="notion-header-anchor"></div><a class="notion-hash-link" href="#853c72a7a048467581f0c09088e74fde" title="方法二：矩阵快速幂"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b><b>方法二：矩阵快速幂</b></b></span></span></h3><div class="notion-text notion-block-b7b4e4b63028463b8903235e0ce75f67">这是官方给的一个方法，只能单押一个6。</div><div class="notion-text notion-block-da8e04a64bc344a1a4e8f4f57456ca1e">上面的滚动数组的方法适用于 n 比较小的情况，在 n 变大之后，O(n)的时间复杂度会让这个算法看起来有些捉襟见肘。我们可以用「<b>矩阵快速幂</b>」的方法来优化这个过程。</div><div class="notion-text notion-block-44a1b52677c74a96b875043b68388e4c">首先我们可以构建这样一个递推关系：</div><figure class="notion-asset-wrapper notion-asset-wrapper-image notion-block-1f8cf7be443c4fa8b582ba54bcafff54"><div style="position:relative;display:flex;justify-content:center;align-self:center;width:560px;max-width:100%;flex-direction:column"><img style="object-fit:cover" src="https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F315fcc5e-7b64-4ffc-b937-fe29e0be249f%2Fdf86e5b5-99d0-4841-b073-1536c4e905fa%2F%25E5%2585%25AC%25E5%25BC%258F1.png?table=block&amp;id=1f8cf7be-443c-4fa8-b582-ba54bcafff54&amp;t=1f8cf7be-443c-4fa8-b582-ba54bcafff54&amp;width=560&amp;cache=v2" alt="notion image" loading="lazy" decoding="async"/></div></figure><div class="notion-text notion-block-7f698e88c5b141e8924707e36644b6f2">因此我们只要能快速计算矩阵 M 的 n次幂，就可以得到 f(n) 的值。如果直接求取 M^n，时间复杂度是 O(n)的，我们可以定义矩阵乘法，然后用快速幂算法来加速这里 M^n的求取。</div><figure class="notion-asset-wrapper notion-asset-wrapper-image notion-block-22b36cd054524bdeafa781ed7f3190c6"><div style="position:relative;display:flex;justify-content:center;align-self:center;width:696px;max-width:100%;flex-direction:column"><img style="object-fit:cover" src="https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F315fcc5e-7b64-4ffc-b937-fe29e0be249f%2F786390a8-5c38-4e97-bebf-5e9eecb49ab5%2F%25E5%2585%25AC%25E5%25BC%258F2.png?table=block&amp;id=22b36cd0-5452-4bde-afa7-81ed7f3190c6&amp;t=22b36cd0-5452-4bde-afa7-81ed7f3190c6&amp;width=696&amp;cache=v2" alt="notion image" loading="lazy" decoding="async"/></div></figure><div class="notion-text notion-block-3d72f6629f574fafb97cc4718420d5b1"><b>复杂度分析</b></div><ul class="notion-list notion-list-disc notion-block-37cda3ebbbd94d3aa085619750ffeba4"><li>时间复杂度：同快速幂，O(log⁡n)。</li></ul><ul class="notion-list notion-list-disc notion-block-bc8f1a0f5ce54543abd5a5c2fa9f87b9"><li>空间复杂度：O(1)。</li></ul><h3 class="notion-h notion-h2 notion-h-indent-1 notion-block-45538b95c3684102ab4cb77c1263f0c3" data-id="45538b95c3684102ab4cb77c1263f0c3"><span><div id="45538b95c3684102ab4cb77c1263f0c3" class="notion-header-anchor"></div><a class="notion-hash-link" href="#45538b95c3684102ab4cb77c1263f0c3" title="方法三：通项公式"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title"><b><b>方法三：通项公式</b></b></span></span></h3><div class="notion-text notion-block-40c6a34fee4440a5882919783219784a">根据递推方程 f(n)=f(n−1)+f(n−2)，我们可以写出这样的特征方程：</div><figure class="notion-asset-wrapper notion-asset-wrapper-image notion-block-a9efea5a198c4745beef33229c6bf011"><div style="position:relative;display:flex;justify-content:center;align-self:center;width:672px;max-width:100%;flex-direction:column"><img style="object-fit:cover" src="https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F315fcc5e-7b64-4ffc-b937-fe29e0be249f%2F37355f09-09a0-46fe-ac65-6af1de193f27%2F%25E5%2585%25AC%25E5%25BC%258F3.png?table=block&amp;id=a9efea5a-198c-4745-beef-33229c6bf011&amp;t=a9efea5a-198c-4745-beef-33229c6bf011&amp;width=672&amp;cache=v2" alt="notion image" loading="lazy" decoding="async"/></div></figure><div class="notion-text notion-block-7aa3944e2cb0431d93b6abf7cdda6b35"><b>复杂度分析</b></div><div class="notion-text notion-block-76800cc2490b498b8886c89bee3e2395">代码中使用的 pow函数的时空复杂度与 CPU 支持的指令集相关。</div><h3 class="notion-h notion-h2 notion-h-indent-1 notion-block-10dd3c05cd3b435e98cfafffd7b2c135" data-id="10dd3c05cd3b435e98cfafffd7b2c135"><span><div id="10dd3c05cd3b435e98cfafffd7b2c135" class="notion-header-anchor"></div><a class="notion-hash-link" href="#10dd3c05cd3b435e98cfafffd7b2c135" title="方式四：狼人大哥法"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">方式四：狼人大哥法</span></span></h3><div class="notion-text notion-block-c42ec1f77ec94c7099d1c093bacbcb08">在提交的区域里看到一个狼人大哥(比狠人还多一点&gt;-&lt;),注意到题目中
• <code class="notion-inline-code">1 &lt;= n &lt;= 45</code></div><div class="notion-text notion-block-820e8c63857943e08bec3bb0b44a91c7">所以他就直接穷举了</div><figure class="notion-asset-wrapper notion-asset-wrapper-image notion-block-4d8a196ffde3460b806901660b1846c0"><div style="position:relative;display:flex;justify-content:center;align-self:center;width:200px;max-width:100%;flex-direction:column"><img style="object-fit:cover" src="https://www.notion.so/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F315fcc5e-7b64-4ffc-b937-fe29e0be249f%2Faacbf8ee-ee95-463c-99cb-424afb1a49f1%2F%25E7%258B%25A0%25E4%25BA%25BA.gif?table=block&amp;id=4d8a196f-fde3-460b-8069-01660b1846c0&amp;t=4d8a196f-fde3-460b-8069-01660b1846c0&amp;width=200&amp;cache=v2" alt="notion image" loading="lazy" decoding="async"/></div></figure><hr class="notion-hr notion-block-3ec08bbe53c34feeb19c86f3b373ec8c"/><div class="notion-text notion-block-2d42dd9a51ee49b183ef7bbd3b7b53e1">参考文献</div><div class="notion-text notion-block-a0156a785eeb4aecbf286b1e2a1e191e"><a target="_blank" rel="noopener noreferrer" class="notion-link" href="https://zhuanlan.zhihu.com/p/365698607">https://zhuanlan.zhihu.com/p/365698607</a></div><div class="notion-text notion-block-99ec76f52bd841e789e8aadf08a3b884"><a target="_blank" rel="noopener noreferrer" class="notion-link" href="https://leetcode.cn/problems/climbing-stairs/solutions/286022/pa-lou-ti-by-leetcode-solution/">https://leetcode.cn/problems/climbing-stairs/solutions/286022/pa-lou-ti-by-leetcode-solution/</a></div></main></div>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[模板说明]]></title>
            <link>https://www.zhangsanpyq.top/article/guide</link>
            <guid>https://www.zhangsanpyq.top/article/guide</guid>
            <pubDate>Fri, 02 Jul 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[<- 点击标题OPEN按钮打开说明；请检查您的NOTION_PAGE_ID是否成功配置，否则会显示我的默认数据库内容。]]></description>
            <content:encoded><![CDATA[<div id="notion-article" class="mx-auto overflow-hidden "><main class="notion light-mode notion-page notion-block-6187e5d9534741738e07bd02cf0e1d4a"><div class="notion-viewport"></div><div class="notion-collection-page-properties"></div><h2 class="notion-h notion-h1 notion-h-indent-0 notion-block-130063f50561437b86133a2e83ce1b60" data-id="130063f50561437b86133a2e83ce1b60"><span><div id="130063f50561437b86133a2e83ce1b60" class="notion-header-anchor"></div><a class="notion-hash-link" href="#130063f50561437b86133a2e83ce1b60" title="如何使用Notion编写文章"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">如何使用Notion编写文章</span></span></h2><div class="notion-text notion-block-d676a4b96cf4468d992593552270fa63">请访问教程获取帮助</div><div class="notion-row"><a target="_blank" rel="noopener noreferrer" class="notion-bookmark notion-block-334a789e631b4b07bb8d3ab2d68dc687" href="https://docs.tangly1024.com/article/start-to-write"><div><div class="notion-bookmark-title">如何在Notion中开始写作 | NotionNext文档</div><div class="notion-bookmark-description">这是一个由NotionNext生成的站点</div><div class="notion-bookmark-link"><div class="notion-bookmark-link-icon"><img src="https://docs.tangly1024.com/favicon.ico?t=334a789e-631b-4b07-bb8d-3ab2d68dc687" alt="如何在Notion中开始写作 | NotionNext文档" loading="lazy" decoding="async"/></div><div class="notion-bookmark-link-text">https://docs.tangly1024.com/article/start-to-write</div></div></div></a></div><div class="notion-row"><a target="_blank" rel="noopener noreferrer" class="notion-bookmark notion-block-2b5c677956f54c58af7a7b92f97ca9ca" href="https://docs.tangly1024.com/article/notion-short-key"><div><div class="notion-bookmark-title">Notion快捷键 | NotionNext文档</div><div class="notion-bookmark-description">Notion有很多使用的快捷键，看完这篇文章，让你的效率加倍</div><div class="notion-bookmark-link"><div class="notion-bookmark-link-icon"><img src="https://docs.tangly1024.com/favicon.ico?t=2b5c6779-56f5-4c58-af7a-7b92f97ca9ca" alt="Notion快捷键 | NotionNext文档" loading="lazy" decoding="async"/></div><div class="notion-bookmark-link-text">https://docs.tangly1024.com/article/notion-short-key</div></div></div><div class="notion-bookmark-image"><img style="object-fit:cover" src="https://www.notion.so/image/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2Fd4851275-5ab5-4aaa-bc51-77c73ad658c4%2Fe8ed862f23227112ab999a90757a3bf8.jpg?table=block&amp;id=a88d5688-b66a-4baf-a8e8-f769bb210954&amp;width=800&amp;t=2b5c6779-56f5-4c58-af7a-7b92f97ca9ca" alt="Notion快捷键 | NotionNext文档" loading="lazy" decoding="async"/></div></a></div><h2 class="notion-h notion-h1 notion-h-indent-0 notion-block-a8cac9e6619e4d5bbf0d99b56e2f327f" data-id="a8cac9e6619e4d5bbf0d99b56e2f327f"><span><div id="a8cac9e6619e4d5bbf0d99b56e2f327f" class="notion-header-anchor"></div><a class="notion-hash-link" href="#a8cac9e6619e4d5bbf0d99b56e2f327f" title="模板使用说明"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">模板使用说明</span></span></h2><div class="notion-text notion-block-461a8e8e95174967a074239de862304b">NotionNext项目必须绑定一个Notion数据库才能使用。请访问教程获取帮助</div><div class="notion-row"><a target="_blank" rel="noopener noreferrer" class="notion-bookmark notion-block-cc7fd16e888f4d268fbf5149c2827200" href="https://docs.tangly1024.com/article/vercel-deploy-notion-next#3df829414795492bb41ec351eb6da84e"><div><div class="notion-bookmark-title">Vercel云部署 | NotionNext文档</div><div class="notion-bookmark-description">Vercel是一款国外的Serverless托管平台，对个人用户使用几乎免费，而且方便快捷，用Vercel托管你的Notion站点，无需再操心服务器的维护与资费问题。</div><div class="notion-bookmark-link"><div class="notion-bookmark-link-icon"><img src="https://docs.tangly1024.com/favicon.ico?t=cc7fd16e-888f-4d26-8fbf-5149c2827200" alt="Vercel云部署 | NotionNext文档" loading="lazy" decoding="async"/></div><div class="notion-bookmark-link-text">https://docs.tangly1024.com/article/vercel-deploy-notion-next#3df829414795492bb41ec351eb6da84e</div></div></div><div class="notion-bookmark-image"><img style="object-fit:cover" src="https://images.unsplash.com/photo-1642083139428-9ee5fa423c46?ixlib=rb-4.0.3&amp;q=50&amp;fm=webp&amp;crop=entropy&amp;cs=tinysrgb&amp;width=800&amp;fmt=webp&amp;t=cc7fd16e-888f-4d26-8fbf-5149c2827200" alt="Vercel云部署 | NotionNext文档" loading="lazy" decoding="async"/></div></a></div><div class="notion-sync-block notion-block-1adf260acde84fdda2adf3cee1cafc2d"><h3 class="notion-h notion-h2 notion-block-b48e84feb07c415690e74b471d6ff2e8" data-id="b48e84feb07c415690e74b471d6ff2e8"><span><div id="b48e84feb07c415690e74b471d6ff2e8" class="notion-header-anchor"></div><a class="notion-hash-link" href="#b48e84feb07c415690e74b471d6ff2e8" title="Notion模板字段说明"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">Notion模板字段说明</span></span></h3><div class="notion-text notion-block-801de8ffbcf0498a850b04d9938d2f32">Notion数据库中，每条数据都将有以下属性🤔：</div><table class="notion-simple-table notion-block-05a6ad568f244353b84cb512508cf5db"><tbody><tr class="notion-simple-table-row notion-block-fc9113e6f83a4d45bfdd63cd0200d224"><td class="" style="width:116.99479675292969px"><div class="notion-simple-table-cell">属性</div></td><td class="" style="width:46.989585876464844px"><div class="notion-simple-table-cell">必填</div></td><td class="" style="width:239.00001525878906px"><div class="notion-simple-table-cell">说明</div></td><td class="" style="width:315.66668701171875px"><div class="notion-simple-table-cell">备注</div></td></tr><tr class="notion-simple-table-row notion-block-77f456899c9b4f8f8545a6fcb9947d77"><td class="" style="width:116.99479675292969px"><div class="notion-simple-table-cell"><code class="notion-inline-code">title</code></div></td><td class="" style="width:46.989585876464844px"><div class="notion-simple-table-cell"> 是</div></td><td class="" style="width:239.00001525878906px"><div class="notion-simple-table-cell"> 文章标题</div></td><td class="" style="width:315.66668701171875px"><div class="notion-simple-table-cell">ㅤ</div></td></tr><tr class="notion-simple-table-row notion-block-569ff31ebe124715a52a65dbc45e54d1"><td class="" style="width:116.99479675292969px"><div class="notion-simple-table-cell"><code class="notion-inline-code">status</code></div></td><td class="" style="width:46.989585876464844px"><div class="notion-simple-table-cell">是</div></td><td class="" style="width:239.00001525878906px"><div class="notion-simple-table-cell">发布状态</div></td><td class="" style="width:315.66668701171875px"><div class="notion-simple-table-cell">（仅当状态为<code class="notion-inline-code">Published</code> 时会被 展示）</div></td></tr><tr class="notion-simple-table-row notion-block-49381635c335412dbbec2b099e0b07d9"><td class="" style="width:116.99479675292969px"><div class="notion-simple-table-cell"><code class="notion-inline-code">type</code></div></td><td class="" style="width:46.989585876464844px"><div class="notion-simple-table-cell">是</div></td><td class="" style="width:239.00001525878906px"><div class="notion-simple-table-cell">页面类型 (博文<code class="notion-inline-code">Post</code> / 单页(<code class="notion-inline-code">Page</code>)</div></td><td class="" style="width:315.66668701171875px"><div class="notion-simple-table-cell">单页不会在博文列表显示 。</div></td></tr><tr class="notion-simple-table-row notion-block-9b79ac16487042ef88a0c738421ba87e"><td class="" style="width:116.99479675292969px"><div class="notion-simple-table-cell"><code class="notion-inline-code">summary</code></div></td><td class="" style="width:46.989585876464844px"><div class="notion-simple-table-cell">否</div></td><td class="" style="width:239.00001525878906px"><div class="notion-simple-table-cell">内容摘要</div></td><td class="" style="width:315.66668701171875px"><div class="notion-simple-table-cell">搜索和简略显示会用到，在文章列表会显示出</div></td></tr><tr class="notion-simple-table-row notion-block-5bc3fbfc9bc34731a452fccccf8a0bb4"><td class="" style="width:116.99479675292969px"><div class="notion-simple-table-cell"><code class="notion-inline-code">date</code></div></td><td class="" style="width:46.989585876464844px"><div class="notion-simple-table-cell">否</div></td><td class="" style="width:239.00001525878906px"><div class="notion-simple-table-cell">发布日期</div></td><td class="" style="width:315.66668701171875px"><div class="notion-simple-table-cell">在V3.3.9之前的版本此项为必填。</div></td></tr><tr class="notion-simple-table-row notion-block-3ed53cb7eda54dc3b62ecd4eecc11707"><td class="" style="width:116.99479675292969px"><div class="notion-simple-table-cell"><code class="notion-inline-code">category</code></div></td><td class="" style="width:46.989585876464844px"><div class="notion-simple-table-cell">否</div></td><td class="" style="width:239.00001525878906px"><div class="notion-simple-table-cell">文章分类</div></td><td class="" style="width:315.66668701171875px"><div class="notion-simple-table-cell">可以自定义</div></td></tr><tr class="notion-simple-table-row notion-block-0b7e4061f5b0494889ef59f6d09ad595"><td class="" style="width:116.99479675292969px"><div class="notion-simple-table-cell"><code class="notion-inline-code">tags</code></div></td><td class="" style="width:46.989585876464844px"><div class="notion-simple-table-cell">否</div></td><td class="" style="width:239.00001525878906px"><div class="notion-simple-table-cell">文章标签</div></td><td class="" style="width:315.66668701171875px"><div class="notion-simple-table-cell">可多个，建议不要太多</div></td></tr><tr class="notion-simple-table-row notion-block-c1296763a7bf4aeda18e983704afaa7a"><td class="" style="width:116.99479675292969px"><div class="notion-simple-table-cell"><code class="notion-inline-code">slug</code></div></td><td class="" style="width:46.989585876464844px"><div class="notion-simple-table-cell">否</div></td><td class="" style="width:239.00001525878906px"><div class="notion-simple-table-cell">文章短路径</div></td><td class="" style="width:315.66668701171875px"><div class="notion-simple-table-cell"> (每篇文章唯一，请勿 重复）</div></td></tr><tr class="notion-simple-table-row notion-block-b257a20f63d94e5a8e951595d62114d6"><td class="" style="width:116.99479675292969px"><div class="notion-simple-table-cell"><code class="notion-inline-code">icon</code></div></td><td class="" style="width:46.989585876464844px"><div class="notion-simple-table-cell">否</div></td><td class="" style="width:239.00001525878906px"><div class="notion-simple-table-cell">菜单栏图标(仅当<code class="notion-inline-code">Page</code>/<code class="notion-inline-code">Menu</code>类型有效)</div></td><td class="" style="width:315.66668701171875px"><div class="notion-simple-table-cell">可以参考：<a target="_blank" rel="noopener noreferrer" class="notion-link" href="https://fontawesome.com/v6/search">图标库地址</a></div></td></tr><tr class="notion-simple-table-row notion-block-357acc3a7d4d4fdd8193ec36e99f38e9"><td class="" style="width:116.99479675292969px"><div class="notion-simple-table-cell"><code class="notion-inline-code">password</code></div></td><td class="" style="width:46.989585876464844px"><div class="notion-simple-table-cell"> 否</div></td><td class="" style="width:239.00001525878906px"><div class="notion-simple-table-cell"> 文章加锁</div></td><td class="" style="width:315.66668701171875px"><div class="notion-simple-table-cell"> 需要输入密码才允许访问</div></td></tr></tbody></table><div class="notion-text notion-block-d5bf43bea237482bac7ba5d7a04d1530">数据库的每一列有不同的功能；

type： 这条数据的类型 ，有 notice公告、post文章、page单页、menu菜单、submenu子菜单这几种类型。

slug ，根据数据类型，有不同的作用：在菜单中表示跳转到哪个页面， 在文章中表示这篇文章在博客中的访问地址。 例如 一个类型为page的数据slug为<code class="notion-inline-code">test</code> ， 则可以通过 <a target="_blank" rel="noopener noreferrer" class="notion-link" href="https://域名/test">https://域名/test</a> 访问到这个page；而一个类型为post的数据，slug为<code class="notion-inline-code">example</code>，则可以通过 <a target="_blank" rel="noopener noreferrer" class="notion-link" href="https://域名/article/example">https://域名/article/example</a> 访问到这个博客，同时您的首页列表中也会显示这条博客。</div></div><a class="notion-page-link notion-block-fb4168235b334ee18d499b35f2949319" href="/fb4168235b334ee18d499b35f2949319"><span class="notion-page-title"><div class="notion-page-icon-inline notion-page-icon-image"><svg class="notion-page-title-icon notion-page-icon" alt="动态规划最核心的思想，就在于拆分子问题，记住过往，减少重复计算。" viewBox="0 0 30 30" width="16"><path d="M16,1H4v28h22V11L16,1z M16,3.828L23.172,11H16V3.828z M24,27H6V3h8v10h10V27z M8,17h14v-2H8V17z M8,21h14v-2H8V21z M8,25h14v-2H8V25z"></path></svg></div><span class="notion-page-title-text">动态规划最核心的思想，就在于<b>拆分子问题，记住过往，减少重复计算</b>。</span></span></a></main></div>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[空白文章]]></title>
            <link>https://www.zhangsanpyq.top/article/example-6</link>
            <guid>https://www.zhangsanpyq.top/article/example-6</guid>
            <pubDate>Fri, 02 Jul 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[仅供列表展示、文章无内容]]></description>
            <content:encoded><![CDATA[<div id="notion-article" class="mx-auto overflow-hidden "><main class="notion light-mode notion-page notion-block-df921783560d49018219e90be68d8bf1"><div class="notion-viewport"></div><div class="notion-collection-page-properties"></div><div class="notion-callout notion-gray_background_co notion-block-1b3507e443a548cfba9f17231307e530"><div class="notion-page-icon-inline notion-page-icon-span"><span class="notion-page-icon" role="img" aria-label="😀">😀</span></div><div class="notion-callout-text">这里写文章的前言：
一个简单的开头,简述这篇文章讨论的问题、目标、人物、背景是什么？并简述你给出的答案。<div class="notion-text notion-block-aef4e4da317049ff869dfd650023051a">可以说说你的故事：阻碍、努力、结果成果，意外与转折。</div></div></div><div class="notion-blank notion-block-1213d9eba6ff4ca28877886f7150e075"> </div><h2 class="notion-h notion-h1 notion-h-indent-0 notion-block-d339ce16691145c7af8a5f5517a81434" data-id="d339ce16691145c7af8a5f5517a81434"><span><div id="d339ce16691145c7af8a5f5517a81434" class="notion-header-anchor"></div><a class="notion-hash-link" href="#d339ce16691145c7af8a5f5517a81434" title="📝 主旨内容"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">📝 主旨内容</span></span></h2><h3 class="notion-h notion-h2 notion-h-indent-1 notion-block-fd73a4e015d24193a4dbad5f796c153b" data-id="fd73a4e015d24193a4dbad5f796c153b"><span><div id="fd73a4e015d24193a4dbad5f796c153b" class="notion-header-anchor"></div><a class="notion-hash-link" href="#fd73a4e015d24193a4dbad5f796c153b" title="观点1"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">观点1</span></span></h3><blockquote class="notion-quote notion-block-ee922c89ea704a77873d3807a0ce1578"><div>引用的话语</div></blockquote><h3 class="notion-h notion-h2 notion-h-indent-1 notion-block-86a8b369105346398fba0a795a07ee5d" data-id="86a8b369105346398fba0a795a07ee5d"><span><div id="86a8b369105346398fba0a795a07ee5d" class="notion-header-anchor"></div><a class="notion-hash-link" href="#86a8b369105346398fba0a795a07ee5d" title="观点2"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">观点2</span></span></h3><blockquote class="notion-quote notion-block-a24d1d37027647f28ee820737512758a"><div>引用的话语</div></blockquote><h2 class="notion-h notion-h1 notion-h-indent-0 notion-block-54c98c60a68e48a1b4c07f013c89acdb" data-id="54c98c60a68e48a1b4c07f013c89acdb"><span><div id="54c98c60a68e48a1b4c07f013c89acdb" class="notion-header-anchor"></div><a class="notion-hash-link" href="#54c98c60a68e48a1b4c07f013c89acdb" title="🤗 总结归纳"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">🤗 总结归纳</span></span></h2><div class="notion-text notion-block-b8b408f388ba421c8cafbfe1379cdcbc">总结文章的内容</div><h2 class="notion-h notion-h1 notion-h-indent-0 notion-block-de2fd5845f084c16bcf9d054de3eafb7" data-id="de2fd5845f084c16bcf9d054de3eafb7"><span><div id="de2fd5845f084c16bcf9d054de3eafb7" class="notion-header-anchor"></div><a class="notion-hash-link" href="#de2fd5845f084c16bcf9d054de3eafb7" title="📎 参考文章"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">📎 参考文章</span></span></h2><ul class="notion-list notion-list-disc notion-block-548e9f8f693441e6a90df2f95ae16c7e"><li>一些引用</li></ul><ul class="notion-list notion-list-disc notion-block-875d8cf6ad3d452caca10c403bc49291"><li>引用文章</li></ul><div class="notion-blank notion-block-f4ee405069bb43fab90fc5b12c3ac84f"> </div><div class="notion-callout notion-gray_background_co notion-block-77dfd117b2274f7ab4e5a58e2aece0ef"><div class="notion-page-icon-inline notion-page-icon-span"><span class="notion-page-icon" role="img" aria-label="💡">💡</span></div><div class="notion-callout-text">有关Notion安装或者使用上的问题，欢迎您在底部评论区留言，一起交流~</div></div></main></div>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[YOLO-World——超级轻量级开放词汇目标检测方法]]></title>
            <link>https://www.zhangsanpyq.top/article/example-2</link>
            <guid>https://www.zhangsanpyq.top/article/example-2</guid>
            <pubDate>Sun, 05 Nov 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[本文需要输入密码才可访问，密码: 123456]]></description>
            <content:encoded><![CDATA[本文需要输入密码才可访问，密码: 123456]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[CLIP：OpenAI多模态大模型，连接文本和图像]]></title>
            <link>https://www.zhangsanpyq.top/article/example-3</link>
            <guid>https://www.zhangsanpyq.top/article/example-3</guid>
            <pubDate>Fri, 02 Jul 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[仅供列表展示、文章无内容，仅供列表展示、文章无内容，仅供列表展示、文章无内容。]]></description>
            <content:encoded><![CDATA[<div id="notion-article" class="mx-auto overflow-hidden "><main class="notion light-mode notion-page notion-block-061fccb87704497d8b3d2ba65bc1ff14"><div class="notion-viewport"></div><div class="notion-collection-page-properties"></div><div class="notion-blank notion-block-2e1423b4cb1c403b8ed382164d82904a"> </div><div class="notion-callout notion-gray_background_co notion-block-bb3e44bf1a2244c5ab11a896fe573db5"><div class="notion-page-icon-inline notion-page-icon-span"><span class="notion-page-icon" role="img" aria-label="😀">😀</span></div><div class="notion-callout-text">这里写文章的前言：
一个简单的开头,简述这篇文章讨论的问题、目标、人物、背景是什么？并简述你给出的答案。<div class="notion-text notion-block-c2d28ba8edb244a39c0b1be6e0b6ebb0">可以说说你的故事：阻碍、努力、结果成果，意外与转折。</div></div></div><div class="notion-blank notion-block-bc0a0bd8a65f4a54848d8350920e9cbb"> </div><h2 class="notion-h notion-h1 notion-h-indent-0 notion-block-dbb35da503064d1ebb1fad8f69592105" data-id="dbb35da503064d1ebb1fad8f69592105"><span><div id="dbb35da503064d1ebb1fad8f69592105" class="notion-header-anchor"></div><a class="notion-hash-link" href="#dbb35da503064d1ebb1fad8f69592105" title="📝 主旨内容"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">📝 主旨内容</span></span></h2><h3 class="notion-h notion-h2 notion-h-indent-1 notion-block-ea646d1ac3bf454dab3a8a8d6dabd2da" data-id="ea646d1ac3bf454dab3a8a8d6dabd2da"><span><div id="ea646d1ac3bf454dab3a8a8d6dabd2da" class="notion-header-anchor"></div><a class="notion-hash-link" href="#ea646d1ac3bf454dab3a8a8d6dabd2da" title="观点1"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">观点1</span></span></h3><blockquote class="notion-quote notion-block-0df1599e963b47e291351d2fc8e0e4ca"><div>引用的话语</div></blockquote><h3 class="notion-h notion-h2 notion-h-indent-1 notion-block-a660a175c61046b6a9fa6539cffc596a" data-id="a660a175c61046b6a9fa6539cffc596a"><span><div id="a660a175c61046b6a9fa6539cffc596a" class="notion-header-anchor"></div><a class="notion-hash-link" href="#a660a175c61046b6a9fa6539cffc596a" title="观点2"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">观点2</span></span></h3><blockquote class="notion-quote notion-block-ae497fd35a584b47933c107954632c2e"><div>引用的话语</div></blockquote><h2 class="notion-h notion-h1 notion-h-indent-0 notion-block-f001c5b429904004b24b36c12cbdcb07" data-id="f001c5b429904004b24b36c12cbdcb07"><span><div id="f001c5b429904004b24b36c12cbdcb07" class="notion-header-anchor"></div><a class="notion-hash-link" href="#f001c5b429904004b24b36c12cbdcb07" title="🤗 总结归纳"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">🤗 总结归纳</span></span></h2><div class="notion-text notion-block-46679d46d0c54fbaad71749640947441">总结文章的内容</div><h2 class="notion-h notion-h1 notion-h-indent-0 notion-block-42b4cf589fe343f688eb19d6d6355345" data-id="42b4cf589fe343f688eb19d6d6355345"><span><div id="42b4cf589fe343f688eb19d6d6355345" class="notion-header-anchor"></div><a class="notion-hash-link" href="#42b4cf589fe343f688eb19d6d6355345" title="📎 参考文章"><svg viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"></path></svg></a><span class="notion-h-title">📎 参考文章</span></span></h2><ul class="notion-list notion-list-disc notion-block-a73bb82791cb44cbba4818d3d1ad6596"><li>一些引用</li></ul><ul class="notion-list notion-list-disc notion-block-dfb587ae51bf423d9034843ae28e268d"><li>引用文章</li></ul><div class="notion-blank notion-block-cc6933e641a748ecb963d3cc664366bd"> </div><div class="notion-callout notion-gray_background_co notion-block-efc729175ab44cf3b82b1adb3bba83be"><div class="notion-page-icon-inline notion-page-icon-span"><span class="notion-page-icon" role="img" aria-label="💡">💡</span></div><div class="notion-callout-text">有关Notion安装或者使用上的问题，欢迎您在底部评论区留言，一起交流~</div></div></main></div>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[绑定成功测试]]></title>
            <link>https://www.zhangsanpyq.top/article/example-4</link>
            <guid>https://www.zhangsanpyq.top/article/example-4</guid>
            <pubDate>Fri, 02 Jul 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[如果您的Notion数据库已经修改了内容，发现网站内容还是旧的，说明绑定NotionPageID失败了，请重新检查Vercel后台是否正确配置好ID，并尝试重新部署。]]></description>
            <content:encoded><![CDATA[<div id="notion-article" class="mx-auto overflow-hidden "><main class="notion light-mode notion-page notion-block-cf4eeeba642a4133a9ad443f76645c99"><div class="notion-viewport"></div><div class="notion-collection-page-properties"></div><div class="notion-callout notion-gray_background_co notion-block-b9d1ca69446b4a32b37ba774f41a5a12"><div class="notion-page-icon-inline notion-page-icon-span"><span class="notion-page-icon" role="img" aria-label="😀">😀</span></div><div class="notion-callout-text">如果您的Notion数据库已经修改了内容，发现网站内容还是旧的，说明绑定NotionPageID失败了，请重新检查Vercel后台是否正确配置好ID，并尝试重新部署</div></div></main></div>]]></content:encoded>
        </item>
    </channel>
</rss>