<?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://muzimi.org/docs/leetcode/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/%E9%93%BE%E8%A1%A8/</link>
    <description>Recent content in 链表 on 世界</description>
    <generator>Hugo</generator>
    <language>zh-cn</language>
    <atom:link href="https://muzimi.org/docs/leetcode/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/%E9%93%BE%E8%A1%A8/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>138 随机链表的复制</title>
      <link>https://muzimi.org/docs/leetcode/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/%E9%93%BE%E8%A1%A8/138_%E9%9A%8F%E6%9C%BA%E9%93%BE%E8%A1%A8%E7%9A%84%E5%A4%8D%E5%88%B6/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://muzimi.org/docs/leetcode/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/%E9%93%BE%E8%A1%A8/138_%E9%9A%8F%E6%9C%BA%E9%93%BE%E8%A1%A8%E7%9A%84%E5%A4%8D%E5%88%B6/</guid>
      <description>&lt;h2 id=&#34;题目描述&#34;&gt;题目描述&lt;a class=&#34;anchor&#34; href=&#34;#%e9%a2%98%e7%9b%ae%e6%8f%8f%e8%bf%b0&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;给你一个长度为 &lt;code&gt;n&lt;/code&gt; 的链表，每个节点除了 &lt;code&gt;next&lt;/code&gt; 指针之外，还有一个额外的 &lt;code&gt;random&lt;/code&gt; 指针。这个指针可以指向链表中的任意节点，也可以是 &lt;code&gt;nil&lt;/code&gt;。&lt;/p&gt;&#xA;&lt;p&gt;现在需要构造这个链表的深拷贝。新链表中的每个节点都要重新创建，节点值与原节点一致，同时 &lt;code&gt;next&lt;/code&gt; 和 &lt;code&gt;random&lt;/code&gt; 的指向关系也要和原链表保持一致，并且不能再指向原链表中的任何节点。&lt;/p&gt;</description>
    </item>
    <item>
      <title>146 LRU缓存</title>
      <link>https://muzimi.org/docs/leetcode/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/%E9%93%BE%E8%A1%A8/146_lru%E7%BC%93%E5%AD%98/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://muzimi.org/docs/leetcode/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/%E9%93%BE%E8%A1%A8/146_lru%E7%BC%93%E5%AD%98/</guid>
      <description>&lt;h2 id=&#34;题目描述&#34;&gt;题目描述&lt;a class=&#34;anchor&#34; href=&#34;#%e9%a2%98%e7%9b%ae%e6%8f%8f%e8%bf%b0&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;设计一个满足 &lt;code&gt;LRU (最近最少使用)&lt;/code&gt; 约束的缓存结构。&lt;/p&gt;&#xA;&lt;p&gt;它需要支持两类操作：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;get(key)&lt;/code&gt;：如果 key 存在，返回对应的 value，否则返回 &lt;code&gt;-1&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;put(key, value)&lt;/code&gt;：如果 key 已存在，就更新它的值；如果不存在，就插入一组新的键值对；当容量超出限制时，要删除最近最少使用的那个 key&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;题目还要求 &lt;code&gt;get&lt;/code&gt; 和 &lt;code&gt;put&lt;/code&gt; 的平均时间复杂度都要做到 &lt;code&gt;O(1)&lt;/code&gt;。&lt;/p&gt;</description>
    </item>
    <item>
      <title>19 删除链表的倒数第 N 个结点</title>
      <link>https://muzimi.org/docs/leetcode/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/%E9%93%BE%E8%A1%A8/19_%E5%88%A0%E9%99%A4%E9%93%BE%E8%A1%A8%E7%9A%84%E5%80%92%E6%95%B0%E7%AC%AC-n-%E4%B8%AA%E7%BB%93%E7%82%B9/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://muzimi.org/docs/leetcode/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/%E9%93%BE%E8%A1%A8/19_%E5%88%A0%E9%99%A4%E9%93%BE%E8%A1%A8%E7%9A%84%E5%80%92%E6%95%B0%E7%AC%AC-n-%E4%B8%AA%E7%BB%93%E7%82%B9/</guid>
      <description>&lt;h2 id=&#34;题目描述&#34;&gt;题目描述&lt;a class=&#34;anchor&#34; href=&#34;#%e9%a2%98%e7%9b%ae%e6%8f%8f%e8%bf%b0&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;给你一个链表的头节点 &lt;code&gt;head&lt;/code&gt;，要求删除链表的倒数第 &lt;code&gt;n&lt;/code&gt; 个节点，并返回删除后的链表头节点。&lt;/p&gt;&#xA;&lt;p&gt;这道题的关键不在于找到节点的值，而在于真正把目标节点从链表里摘掉，所以最后需要调整前后节点的指针连接关系。&lt;/p&gt;</description>
    </item>
    <item>
      <title>21 合并两个有序链表</title>
      <link>https://muzimi.org/docs/leetcode/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/%E9%93%BE%E8%A1%A8/21_%E5%90%88%E5%B9%B6%E4%B8%A4%E4%B8%AA%E6%9C%89%E5%BA%8F%E9%93%BE%E8%A1%A8/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://muzimi.org/docs/leetcode/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/%E9%93%BE%E8%A1%A8/21_%E5%90%88%E5%B9%B6%E4%B8%A4%E4%B8%AA%E6%9C%89%E5%BA%8F%E9%93%BE%E8%A1%A8/</guid>
      <description>&lt;h2 id=&#34;题目描述&#34;&gt;题目描述&lt;a class=&#34;anchor&#34; href=&#34;#%e9%a2%98%e7%9b%ae%e6%8f%8f%e8%bf%b0&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;给你两个按升序排列的链表 &lt;code&gt;list1&lt;/code&gt; 和 &lt;code&gt;list2&lt;/code&gt;，要求把它们合并成一个新的升序链表并返回。&lt;/p&gt;&#xA;&lt;p&gt;这里的“合并”不是重新创建所有节点，而是把两个链表中原有的节点按顺序接起来，最终得到一条有序的新链表。&lt;/p&gt;</description>
    </item>
    <item>
      <title>25 K 个一组翻转链表</title>
      <link>https://muzimi.org/docs/leetcode/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/%E9%93%BE%E8%A1%A8/25_k-%E4%B8%AA%E4%B8%80%E7%BB%84%E7%BF%BB%E8%BD%AC%E9%93%BE%E8%A1%A8/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://muzimi.org/docs/leetcode/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/%E9%93%BE%E8%A1%A8/25_k-%E4%B8%AA%E4%B8%80%E7%BB%84%E7%BF%BB%E8%BD%AC%E9%93%BE%E8%A1%A8/</guid>
      <description>&lt;h2 id=&#34;题目描述&#34;&gt;题目描述&lt;a class=&#34;anchor&#34; href=&#34;#%e9%a2%98%e7%9b%ae%e6%8f%8f%e8%bf%b0&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;给你一个链表头节点 &lt;code&gt;head&lt;/code&gt;，要求每 &lt;code&gt;k&lt;/code&gt; 个节点作为一组进行翻转，并返回处理后的新链表。&lt;/p&gt;&#xA;&lt;p&gt;如果链表最后剩下的节点数量不足 &lt;code&gt;k&lt;/code&gt; 个，那么这一段保持原来的顺序不动。题目还特别要求，不能只交换节点里的值，而是要真正调整链表节点之间的连接关系。&lt;/p&gt;</description>
    </item>
    <item>
      <title>82 删除排序链表中的重复元素 II</title>
      <link>https://muzimi.org/docs/leetcode/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/%E9%93%BE%E8%A1%A8/82_%E5%88%A0%E9%99%A4%E6%8E%92%E5%BA%8F%E9%93%BE%E8%A1%A8%E4%B8%AD%E7%9A%84%E9%87%8D%E5%A4%8D%E5%85%83%E7%B4%A0-ii/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://muzimi.org/docs/leetcode/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/%E9%93%BE%E8%A1%A8/82_%E5%88%A0%E9%99%A4%E6%8E%92%E5%BA%8F%E9%93%BE%E8%A1%A8%E4%B8%AD%E7%9A%84%E9%87%8D%E5%A4%8D%E5%85%83%E7%B4%A0-ii/</guid>
      <description>&lt;h2 id=&#34;题目描述&#34;&gt;题目描述&lt;a class=&#34;anchor&#34; href=&#34;#%e9%a2%98%e7%9b%ae%e6%8f%8f%e8%bf%b0&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;给你一个已经按升序排好的链表 &lt;code&gt;head&lt;/code&gt;，要求把所有出现过重复的数字对应节点全部删除，只保留那些只出现一次的节点。&lt;/p&gt;&#xA;&lt;p&gt;最后返回的链表仍然需要保持有序，所以关键在于识别“某个值是否重复出现”，并把这一整段重复值全部跳过去，而不是只删除其中一个节点。&lt;/p&gt;</description>
    </item>
    <item>
      <title>92 反转链表 II</title>
      <link>https://muzimi.org/docs/leetcode/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/%E9%93%BE%E8%A1%A8/92_%E5%8F%8D%E8%BD%AC%E9%93%BE%E8%A1%A8-ii/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://muzimi.org/docs/leetcode/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/%E9%93%BE%E8%A1%A8/92_%E5%8F%8D%E8%BD%AC%E9%93%BE%E8%A1%A8-ii/</guid>
      <description>&lt;h2 id=&#34;题目描述&#34;&gt;题目描述&lt;a class=&#34;anchor&#34; href=&#34;#%e9%a2%98%e7%9b%ae%e6%8f%8f%e8%bf%b0&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;给你一个单链表的头节点 &lt;code&gt;head&lt;/code&gt;，以及两个整数 &lt;code&gt;left&lt;/code&gt; 和 &lt;code&gt;right&lt;/code&gt;，其中 &lt;code&gt;left &amp;lt;= right&lt;/code&gt;。&lt;/p&gt;&#xA;&lt;p&gt;要求只反转链表中第 &lt;code&gt;left&lt;/code&gt; 个位置到第 &lt;code&gt;right&lt;/code&gt; 个位置之间的节点，其他部分保持原有顺序，最后返回新的链表头节点。&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
