<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[跟着信仰走]]></title><description><![CDATA[一些ACM题的拙见]]></description><link>https://blog.youkuaiyun.com/qq_39178993</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_39178993]]></copyright><item><title><![CDATA[从AI训练角度上解释：同一个事情，为什么你会这么选？]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/147430791</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/147430791</guid><author>qq_39178993</author><pubDate>Tue, 22 Apr 2025 20:59:17 +0800</pubDate><description><![CDATA[从人工智能（AI）训练的角度来看，选择的过程可以通过多个层面进行分析，包括数据、算法、模型训练、反馈机制等。]]></description><category></category></item><item><title><![CDATA[逻辑思维与软件开发：从选定方向到风险管理的全流程]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/147430590</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/147430590</guid><author>qq_39178993</author><pubDate>Tue, 22 Apr 2025 20:49:27 +0800</pubDate><description><![CDATA[结合逻辑思维进行软件开发，不仅可以提高项目的成功率，还能增强团队的协作能力和应变能力。从选定大方向到风险管理，每一个环节都需要严谨的逻辑分析和清晰的思维方式。希望本文能为广大开发者提供一些有益的思路，帮助他们在软件开发的道路上走得更加顺畅。]]></description><category></category></item><item><title><![CDATA[逻辑思维：从混沌到秩序的理性推演在软件开发中的应用]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/147429825</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/147429825</guid><author>qq_39178993</author><pubDate>Tue, 22 Apr 2025 20:31:43 +0800</pubDate><description><![CDATA[在软件开发的过程中，逻辑思维就像是开发者的“GPS导航”，帮助我们从混沌的需求中找到清晰的解决方案。想象一下，如果没有逻辑思维，我们可能会在需求的海洋中迷失方向，最终写出一堆“看似聪明但毫无意义”的代码。逻辑思维在软件开发中扮演着至关重要的角色，它通过因果关系和规则的建立，帮助开发者从混沌中理清思路，实现系统的有序构建。比如，用户希望提高系统的响应速度，这就需要我们像侦探一样，分析当前系统的瓶颈，找出导致响应速度慢的原因，并提出相应的优化方案。这样一来，复杂系统就变得更加可控，降低了开发和维护的难度。]]></description><category></category></item><item><title><![CDATA[指导思维的重要性：比具体理论经验更关键]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/144674037</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/144674037</guid><author>qq_39178993</author><pubDate>Mon, 23 Dec 2024 17:48:03 +0800</pubDate><description><![CDATA[但事实上，真正决定开发效率与质量的，不是单一技术的掌握，而是开发者的指导思维。开发工作中，遇到的问题往往没有现成的解决方案。此时，靠现成经验是无法解决问题的，而指导思维能够帮助开发者从问题的结构化入手，分析原因并找到突破口。例如，流水线具备并发功能的知识点本身没有解决意义，关键在于如何评估并发是否适合当前需求，以及如何设计合理的并发策略。这不仅仅是对问题的逻辑推理，还包括对问题背景的快速理解，对团队资源的合理利用，以及对目标的明确把握。通过与团队的讨论，了解他人对问题的看法，能让自己对问题的理解更加全面。]]></description><category></category></item><item><title><![CDATA[利用编程思维做题之设计一个顺序栈来将十进制数转为八进制数]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/144297904</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/144297904</guid><author>qq_39178993</author><pubDate>Fri, 06 Dec 2024 18:17:27 +0800</pubDate><description><![CDATA[通过设计一个顺序栈并利用栈的基本操作，我们能够高效地将十进制数转换为八进制数。该方法利用栈的先进后出特性，逐步转换并输出结果，具有较好的时间和空间效率。]]></description><category></category></item><item><title><![CDATA[理解函数定义的四个关键内容：操作条件、操作逻辑、变量指向、返回值]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/144272437</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/144272437</guid><author>qq_39178993</author><pubDate>Thu, 05 Dec 2024 17:49:01 +0800</pubDate><description><![CDATA[操作条件：确保函数的输入数据合法，避免无效操作。合理的前置条件可以提升代码的鲁棒性。操作逻辑：函数的核心功能，它决定了函数执行时的具体操作。编写清晰、简洁的操作逻辑有助于提高代码的可维护性。变量指向：函数内部数据的存储方式。合理的变量指向可以确保数据流动的正确性和函数逻辑的一致性。返回值：函数的输出，是调用者使用的结果。返回值的设计应清晰且有意义，确保函数能够与其他代码进行良好的交互。通过这四个方面的设计，函数不仅能实现其功能，还能保持高质量的代码结构，易于理解和扩展。]]></description><category></category></item><item><title><![CDATA[提升开发能力的方向与实践：从问题发现到解决方案的执行]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/144220619</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/144220619</guid><author>qq_39178993</author><pubDate>Tue, 03 Dec 2024 17:59:47 +0800</pubDate><description><![CDATA[从问题发现到解决方案的实施，软件开发是一个不断提升的过程。只有通过不断的学习与实践，才能真正提升开发能力，进而推动个人成长和团队协作。每一个开发者都应将自己置身于不断反馈与改进的循环中，不断加强自己在需求分析、问题解决、项目管理等方面的能力，最终达到完整有效的解决问题的目的。]]></description><category></category></item><item><title><![CDATA[利用编程思维做题之最小堆选出最大的前10个整数]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/144065369</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/144065369</guid><author>qq_39178993</author><pubDate>Tue, 26 Nov 2024 18:48:30 +0800</pubDate><description><![CDATA[通过使用最小堆，我们能够以 O(n) 的时间复杂度找到并输出最大的 10 个数。这种方法比直接排序更高效，尤其是当数据量很大时。]]></description><category></category></item><item><title><![CDATA[利用编程思维做题之二叉链表建树并遍历]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/143915950</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/143915950</guid><author>qq_39178993</author><pubDate>Wed, 20 Nov 2024 16:37:01 +0800</pubDate><description><![CDATA[/ 递归遍历右子树。// 递归遍历右子树。]]></description><category></category></item><item><title><![CDATA[利用编程思维做题之判断回文字符串]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/143273574</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/143273574</guid><author>qq_39178993</author><pubDate>Sun, 27 Oct 2024 20:06:05 +0800</pubDate><description><![CDATA[/ 指向下一个节点的指针。// 指向下一个节点的指针。char data;char data;]]></description><category></category></item><item><title><![CDATA[利用编程思维做题之计算二叉树最大宽度]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/143268129</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/143268129</guid><author>qq_39178993</author><pubDate>Sun, 27 Oct 2024 14:05:37 +0800</pubDate><description><![CDATA[二叉树的宽度是指某一层中节点的数量，最大宽度则是所有层中的最大值。// 队列的节点数组。// 队列的节点数组。// 指向左子节点的指针。// 指向右子节点的指针。// 指向左子节点的指针。// 指向右子节点的指针。在这棵树中，第 3 层的宽度是 3（节点 4、5 和 6），因此最大宽度为 3。// 指向左子节点的指针。// 指向右子节点的指针。printf("二叉树的最大宽度是: %d\n", maxWidth);#define MAX_SIZE 100 // 定义队列的最大大小。]]></description><category></category></item><item><title><![CDATA[利用编程思维做题之二叉链表计算二叉树高度的算法]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/143267599</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/143267599</guid><author>qq_39178993</author><pubDate>Sun, 27 Oct 2024 13:20:11 +0800</pubDate><description><![CDATA[通过递归遍历二叉树，可以有效地计算其高度。这种方法简单且易于理解，对于深度优先搜索等其他操作也具有一定的实用性。]]></description><category></category></item><item><title><![CDATA[代码不是搬砖，请往框架开发方向走]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/143226216</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/143226216</guid><author>qq_39178993</author><pubDate>Fri, 25 Oct 2024 09:39:32 +0800</pubDate><description><![CDATA[一个框架的核心特质在于其抽象性、模块化、可扩展性和通用性，通过这些特点为开发者提供一套统一、高效、可复用的开发标准，简化常见的开发工作，增强开发效率。如果你的解决方案满足这些条件，就可以称之为一个“框架”。]]></description><category></category></item><item><title><![CDATA[利用编程思维做题之统计有向图中出度为零的顶点个数]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/143193414</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/143193414</guid><author>qq_39178993</author><pubDate>Wed, 23 Oct 2024 20:57:47 +0800</pubDate><description><![CDATA[通过该算法，我们可以有效统计出有向图中出度为零的顶点个数。通过遍历邻接表，并统计出度，可以高效解决该问题。]]></description><category></category></item><item><title><![CDATA[利用编程思维做题之将两个有序的单链表合并成一个新的有序单链表]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/142905751</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/142905751</guid><author>qq_39178993</author><pubDate>Sun, 13 Oct 2024 23:02:41 +0800</pubDate><description><![CDATA[通过该算法，我们能够高效地将两个有序单链表合并为一个新的有序链表。该算法的核心是通过逐步比较两个链表的当前结点，维护一个合并后的链表。]]></description><category></category></item><item><title><![CDATA[利用编程思维做题之将无向图的邻接矩阵转换为邻接表]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/142881642</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/142881642</guid><author>qq_39178993</author><pubDate>Sat, 12 Oct 2024 17:05:58 +0800</pubDate><description><![CDATA[通过该算法，我们能够将无向图的邻接矩阵转换为邻接表。相较于邻接矩阵，邻接表在表示稀疏图时更加节省空间，适合边数较少的图。该算法的核心是矩阵遍历和链表操作，通过简单的指针操作实现图的结构转换。]]></description><category></category></item><item><title><![CDATA[利用编程思维做题之求节点 x 在二叉树中的双亲节点算法]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/142881017</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/142881017</guid><author>qq_39178993</author><pubDate>Sat, 12 Oct 2024 16:35:22 +0800</pubDate><description><![CDATA[通过递归遍历二叉树，可以有效地查找目标节点的双亲节点。如果树结构较为复杂，递归的方法也能较为清晰地处理问题。]]></description><category></category></item><item><title><![CDATA[应对算法编程考试的编程技巧]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/142874408</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/142874408</guid><author>qq_39178993</author><pubDate>Sat, 12 Oct 2024 11:55:46 +0800</pubDate><description><![CDATA[算法编程考试中，优化时间和空间复杂度是非常重要的一部分。你需要明确：- **时间复杂度**：通过分析算法的循环次数、递归深度等来确定程序运行的时间。- **空间复杂度**：通过分析算法使用的额外内存来确定其对内存的消耗。**案例**：在排序算法中，归并排序的时间复杂度为 O(n log n)，但其空间复杂度为 O(n)。快速排序的时间复杂度也是 O(n log n)，但在原地排序时，空间复杂度可以优化为 O(1)。]]></description><category></category></item><item><title><![CDATA[利用编程思维做题之在链式存储结构上设计直接插入排序算法。]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/142872416</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/142872416</guid><author>qq_39178993</author><pubDate>Sat, 12 Oct 2024 11:21:15 +0800</pubDate><description><![CDATA[通过直接插入排序算法，我们成功地对单链表进行了排序。该方法对链表的操作比较灵活，主要是通过指针的调整来实现排序。]]></description><category></category></item><item><title><![CDATA[利用编程思维做题之链表内指定区间反转]]></title><link>https://blog.youkuaiyun.com/qq_39178993/article/details/142858898</link><guid>https://blog.youkuaiyun.com/qq_39178993/article/details/142858898</guid><author>qq_39178993</author><pubDate>Fri, 11 Oct 2024 18:14:29 +0800</pubDate><description><![CDATA[通过上述方法，我们成功实现了对单链表指定区间的节点进行反转的操作。关键在于正确定位需要反转的区间，并在反转过程中维护好前后节点的连接关系。此方法不仅有效解决了本题，还可以应用于其他涉及链表部分反转或节点调整的题目。熟练掌握链表操作和指针的使用，对于处理类似问题至关重要。]]></description><category></category></item></channel></rss>