<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[G321666的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/G321666</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; G321666]]></copyright><item><title><![CDATA[[142] Linked List Cycle II 环形链表II]]></title><link>https://blog.youkuaiyun.com/G321666/article/details/156130360</link><guid>https://blog.youkuaiyun.com/G321666/article/details/156130360</guid><author>G321666</author><pubDate>Sun, 21 Dec 2025 15:47:44 +0800</pubDate><description><![CDATA[[C++]龟兔赛跑,在一个环形跑道上，如果两个人（或动物）以不同的速度同向赛跑，跑得快的人最终必然会从后面“套圈”追上跑得慢的人。]]></description><category></category></item><item><title><![CDATA[[160] Intersection of Two Linked Lists 链表相交]]></title><link>https://blog.youkuaiyun.com/G321666/article/details/156022465</link><guid>https://blog.youkuaiyun.com/G321666/article/details/156022465</guid><author>G321666</author><pubDate>Wed, 17 Dec 2025 16:59:45 +0800</pubDate><description><![CDATA[[C++]   真正的相交，必须是物理上（内存地址上）的汇合，而不是节点值恰好相等。]]></description><category></category></item><item><title><![CDATA[[19] Remove Nth Node From End of List 删除链表的倒数第N个节点]]></title><link>https://blog.youkuaiyun.com/G321666/article/details/155951310</link><guid>https://blog.youkuaiyun.com/G321666/article/details/155951310</guid><author>G321666</author><pubDate>Mon, 15 Dec 2025 21:16:46 +0800</pubDate><description><![CDATA[[C++] 使用快慢指针一趟扫描，找到待删除节点的前驱节点。]]></description><category></category></item><item><title><![CDATA[[24] Swap Nodes in Pairs 两两交换链表中的节点]]></title><link>https://blog.youkuaiyun.com/G321666/article/details/155644586</link><guid>https://blog.youkuaiyun.com/G321666/article/details/155644586</guid><author>G321666</author><pubDate>Sat, 06 Dec 2025 16:42:00 +0800</pubDate><description><![CDATA[[C++]通过引入虚拟头节点来统一操作，并用迭代的方式完成交换]]></description><category></category></item><item><title><![CDATA[[206] Reverse Linked List 反转链表]]></title><link>https://blog.youkuaiyun.com/G321666/article/details/155309564</link><guid>https://blog.youkuaiyun.com/G321666/article/details/155309564</guid><author>G321666</author><pubDate>Thu, 27 Nov 2025 11:55:38 +0800</pubDate><description><![CDATA[[C++]pre指向当前节点前一个节点。在反转过程中，它代表了已经反转好的那部分链表的头。当 cur 变为 nullptr 时，也就是循环结束，pre 正好指向新链表的头节点。]]></description><category></category></item><item><title><![CDATA[[707] Design Linked List 设计链表]]></title><link>https://blog.youkuaiyun.com/G321666/article/details/155198767</link><guid>https://blog.youkuaiyun.com/G321666/article/details/155198767</guid><author>G321666</author><pubDate>Mon, 24 Nov 2025 16:21:35 +0800</pubDate><description><![CDATA[[C++]时间复杂度衡量的是，当链表长度 N 增长时，函数执行的操作次数会如何增长。]]></description><category></category></item><item><title><![CDATA[[203] Remove Linked List Elements 移除链表元素]]></title><link>https://blog.youkuaiyun.com/G321666/article/details/155159505</link><guid>https://blog.youkuaiyun.com/G321666/article/details/155159505</guid><author>G321666</author><pubDate>Sun, 23 Nov 2025 11:52:10 +0800</pubDate><description><![CDATA[[C++]虚拟头节点法]]></description><category></category></item><item><title><![CDATA[[59] Spiral Matrix II 螺旋矩阵II]]></title><link>https://blog.youkuaiyun.com/G321666/article/details/155159452</link><guid>https://blog.youkuaiyun.com/G321666/article/details/155159452</guid><author>G321666</author><pubDate>Sun, 23 Nov 2025 11:49:46 +0800</pubDate><description><![CDATA[[C++]通过维护 top, bottom, left, right 四个指针来模拟螺旋收缩的过程，每条边遍历后立即收缩边界并检查是否需要 break，循环退出条件是两个边界交错，一旦交错说明已经填充完所有格子，而重叠时（=）代表螺旋已经收缩到最后一行或者最后一列。]]></description><category></category></item><item><title><![CDATA[[209] Minimum Size Subarray Sum 长度最小的子数组]]></title><link>https://blog.youkuaiyun.com/G321666/article/details/155034877</link><guid>https://blog.youkuaiyun.com/G321666/article/details/155034877</guid><author>G321666</author><pubDate>Wed, 19 Nov 2025 18:25:02 +0800</pubDate><description><![CDATA[[C++]两个单调性 ：题干数组元素都是正数。固定l，h右移，sum单调递增；固定h,l右移，sum单调递减。]]></description><category></category></item><item><title><![CDATA[[977] Squares of a Sorted Array 有序数组的平方]]></title><link>https://blog.youkuaiyun.com/G321666/article/details/154999775</link><guid>https://blog.youkuaiyun.com/G321666/article/details/154999775</guid><author>G321666</author><pubDate>Tue, 18 Nov 2025 19:45:35 +0800</pubDate><description><![CDATA[[C++]一个有序数组中，其元素的平方最大值一定产生于数组的两端。所以不直接生成结果数组，而是反向填充，每次都只找到待处理元素的最大值。]]></description><category></category></item><item><title><![CDATA[[27] Remove Element 移除元素]]></title><link>https://blog.youkuaiyun.com/G321666/article/details/154951799</link><guid>https://blog.youkuaiyun.com/G321666/article/details/154951799</guid><author>G321666</author><pubDate>Mon, 17 Nov 2025 16:46:53 +0800</pubDate><description><![CDATA[[C++] 快指针找萝卜，慢指针找萝卜坑]]></description><category></category></item><item><title><![CDATA[[704] Binary Search 二分查找]]></title><link>https://blog.youkuaiyun.com/G321666/article/details/154917860</link><guid>https://blog.youkuaiyun.com/G321666/article/details/154917860</guid><author>G321666</author><pubDate>Sun, 16 Nov 2025 21:47:19 +0800</pubDate><description><![CDATA[[C++] 适用于“无重复元素的有序数组”或“不需要查找特定位置”的场景，本质上是平衡二叉搜索树（BST）]]></description><category></category></item><item><title><![CDATA[【图灵完备(Turing Complete)】四、处理器架构2]]></title><link>https://blog.youkuaiyun.com/G321666/article/details/144597017</link><guid>https://blog.youkuaiyun.com/G321666/article/details/144597017</guid><author>G321666</author><pubDate>Thu, 19 Dec 2024 23:11:22 +0800</pubDate><description><![CDATA[我们的新架构LEG要采用一种新的条件判断命令，和前面的新ALU一样，它对整条命令的中间两个参数进行比较，这两个参数可以被解释为是地址，或者是立即数，对它们进行比较后得出一个真或假的判断结果，然后根据这个结果来决定是否进行跳转，如果要跳转的话，最后一个参数就是跳转指针，指向程序模块中的某个地址。这里的立即数概念和原始图灵机中的完全一致，不过在那时，受限于指令宽度，我们能获取的立即数的最大值也只有十进制63，而到了这里，我们的完整命令可以有4个字节，那么随之而来的好处就是可取数值更宽了。]]></description><category></category></item><item><title><![CDATA[【图灵完备(Turing Complete)】 三、处理器架构]]></title><link>https://blog.youkuaiyun.com/G321666/article/details/144596691</link><guid>https://blog.youkuaiyun.com/G321666/article/details/144596691</guid><author>G321666</author><pubDate>Thu, 19 Dec 2024 23:00:34 +0800</pubDate><description><![CDATA[其实和上一关没有本质区别，只是把关卡左上角的指令输入元件替换成了程序模块，可以看做是一个ROM，内部有一大堆的寄存器阵列，且已经固化好了程序。从本阶段开始，我们的电路再也不能随意“私拉乱建”了，而是要认真考虑规划，否则的话，就算过了当前关卡，也很难保证在后续关卡中电路还能正常运行，这是本阶段必须重点考虑的方面。这里对指令字节的最高2bit所能产生的4种状态进行了解释，分别对应了4种模式，显然是要实现一个24译码器，那我们可以直接把38译码器拿过来用，不用重新搭了。接着把数据总线挂接好。]]></description><category></category></item><item><title><![CDATA[【图灵完备(Turing Complete)】二、算术运算/存储器]]></title><link>https://blog.youkuaiyun.com/G321666/article/details/144596388</link><guid>https://blog.youkuaiyun.com/G321666/article/details/144596388</guid><author>G321666</author><pubDate>Thu, 19 Dec 2024 22:50:37 +0800</pubDate><description><![CDATA[而第二个输入就是待写入的数据。说白了，这个元件有两个输入，第一个输入就是“使能”引脚，第二个输入才是“数据”引脚。本关之所以叫“小盒子”，是因为它限定了我们的布线空间，真的就像在有限硅晶圆上搭建电路一样，不再让我们“铺张浪费”了，而任务是要在这个有限空间内，搭建4个字节的寄存器。本关有两个输出，一个作为和位，一个作为进位位。在前面的两关我们体验过根据列式子来搭电路的妙招之后，在本关也是一样，先把对应的真值表画出来，本关开始接触的输入值不再是1bit的0或1信号了，而是一个字节信号，有8个bit。]]></description><category></category></item><item><title><![CDATA[【图灵完备(Turing Complete)】一、基础逻辑电路]]></title><link>https://blog.youkuaiyun.com/G321666/article/details/144461158</link><guid>https://blog.youkuaiyun.com/G321666/article/details/144461158</guid><author>G321666</author><pubDate>Fri, 13 Dec 2024 22:42:45 +0800</pubDate><description><![CDATA[和之前一样，拖出导线连接输入端，再拖一根线连到输出端，然后仔细阅读底部中文提示，在灰色的小圆点上点出正确的颜色即可通关。至此，我们拥有了：与门、或门、非门，以及与非门、或非门。由于非门的存在，它永远输出1，所以当或门的另一个输入无论处于什么状态，总体电路的输出永远都是1。在上一轮关卡中得到了 与非门，那么这次再加一个 非门，负负得正，就得到了一个 与门。三路或门，这个没啥好说的，在普通两路或门的基础上再加一个或门即组成一个三路或门。同或门XNOR，仔细看看真值表，会发现实际上就是把异或门的输出取个反。]]></description><category></category></item></channel></rss>