《翻开收藏夹,拾起行动的力量》

news2024/11/16 7:37:53

文章目录

  • 每日一句正能量
  • 前言
  • 分享一道收藏的好题
  • 分享一个收藏的便捷技巧
  • 积灰这么久,这个当时被收藏的东西对现在的你还有用吗?
  • 后记

在这里插入图片描述

每日一句正能量

很喜欢一个字,淡,平淡的淡,其实很不平淡,蕴含着很多人生哲理。淡是一种宁静,是明月松间照,清泉石上流的飘逸。早安!

前言

我们在日常生活中常常会遇到一些优秀的内容,比如文章、视频、图片、音乐等等,这些内容之所以被我们收藏下来,是因为它们曾经让我们感到心动、震撼或者启迪。但是,由于我们的关注点或者环境或者工作或者生活的不断变化,这些收藏品就很容易被遗忘在收藏夹里,成为了无人问津的“宝藏”。

但是,这些“宝藏”可不仅仅是一堆堆冷冰冰的网页链接,它们背后蕴藏的是我们曾经的情感共鸣,是我们曾经的智慧启示,更是我们曾经的宝贵财富。因此,今天让我们一起打开收藏夹,挖掘那些珍藏已久的宝藏,让它们再次闪光,带给更多人的共鸣和启迪。

作为程序员,我们在日常工作和学习中会接触到很多优秀的代码、技术和工具,这些东西对我们的工作和成长都有很大的帮助。然而,由于我们每天都在不断学习和接触新的东西,有些好东西就会被遗忘在收藏夹里,没有被充分利用。

今天,我想邀请大家一起来翻开收藏夹,重新回顾那些曾经让我们拍案叫绝的好东西。不论是一段神妙的代码,还是一篇洞见深刻的技术博客,或者是一款好用的开发工具,都可以在这个机会里得到更多的关注和分享,让我们的技术储备更加丰富、优秀。所以,让我们一起行动起来,分享和传播那些珍藏已久的宝藏,让它们发挥更大的价值和作用!

分享一道收藏的好题

我之前收藏的一道好题是 LeetCode 上的题目“二叉树的右视图”(Binary Tree Right Side View)。

当初我收藏这道题的原因是因为它具有以下优点:

  1. 基础题:这道题对于二叉树的基础操作有很好的考察。二叉树是算法中常见的数据结构,掌握好二叉树的操作对于进一步的算法学习有很大的帮助。

  2. 简单明了:这道题目的描述非常简单明了,题意清晰,让人可以快速理解题意。

  3. 有趣:这道题目并不是一个普通的遍历二叉树的操作,而是要求输出二叉树每层最右侧的节点。这个特质十分有趣,让我想要尝试解决。

而这道题在难度上并不高,因此我也没有太多的思考就选择了收藏,作为以后复习二叉树的一个练手题目。

对于这道题的解法,其实就是基于 BFS 的一种思路。我们可以将二叉树按照层级进行遍历,每次遍历完一层后,将该层最右侧的节点加入结果数组中。具体的代码实现,可以参考如下:

def rightSideView(self, root: TreeNode) -> List[int]:
    if not root:
        return []

    result = []
    queue = [root]

    while queue:
        size = len(queue)
        for i in range(size):
            node = queue.pop(0)
            if i == size - 1:
                result.append(node.val)
            if node.left:
                queue.append(node.left)
            if node.right:
                queue.append(node.right)

    return result

以上就是我收藏的这道二叉树的右视图题目。虽然难度不高,但是它对于二叉树的操作有很好的复习作用,也是一道很有趣的题目。

分享一个收藏的便捷技巧

我之前收藏的一个非常实用的技巧是 VS Code 中的多行编辑(Multi-Cursor Editing)。

多行编辑可以快速地对多处代码进行修改,而不是一个一个地进行修改。使用方法也非常简单,只需要同时按住“Ctrl”键和左键,即可在多处添加光标,然后操作的内容将同步进行修改,非常方便。

我为什么青睐这个技巧呢?首先,这个技巧非常方便,可以大大提高代码编辑的效率。在一些需要批量修改的场景下,比如修改相似的变量名,多行编辑能够轻松解决这个问题。其次,这个技巧功能强大,不仅支持在一行中添加多个光标,还支持在多个文件中进行操作,极大地方便了代码编辑。

除此之外,还有一些类似的技巧也非常值得收藏,比如 VS Code 中的多个光标,以及 Sublime Text 中的多行编辑模式。这些技巧在日常开发中非常实用,而且使用简单,因此我非常推荐大家收藏起来。

我之前收藏的一个技巧是针对算法题中的回溯算法。回溯算法是一种常用的解决问题的方法,但是在实现过程中,容易出现很多问题,比如回溯的顺序、回溯的条件、回溯的剪枝等等。我在学习回溯算法的时候,发现一个非常好用的技巧,那就是“画图+递归”。

具体来说,就是在回溯算法的实现过程中,先画出递归树,然后在递归树中展示回溯的过程,这样能够非常清晰地展示回溯的顺序、回溯的条件、回溯的剪枝等信息。

举个例子来说,在解决全排列问题的时候,我们可以使用递归树来画出全排列的过程。如下图所示,每一次递归都是在树的下一层进行的,展现了全排列问题的所有可能性:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pcpa07Wp-1689952201727)(https://raw.githubusercontent.com/yzyuan0506/MarkdownPhotos/master/Blog/p1.jpg)]

递归树的画法可以根据不同的问题进行调整,比如有些问题需要根据顺序进行回溯、有些问题需要进行剪枝等等,都可以在递归树中进行展示。我非常青睐这个技巧,因为它能够帮助我更加清晰地理解回溯算法的实现过程,优化解题思路,提高代码编写的效率。另外,这个技巧也非常好理解,适用于不同层次的开发人员。

我之前收藏的一个技巧是利用双指针法来解决一些字符串操作的问题,例如回文子串、最长回文子序列、最长公共前缀等问题。

这个技巧的核心思想是利用两个指针来遍历字符串,一般有两种方式:一种是使用两个指针分别从头和尾向中间移动,另一种是使用两个指针分别从同一个方向向中间移动。对于不同的问题,需要根据具体情况选择使用哪种方式。

以回文子串为例,使用双指针法来判断一个字符串是否为回文串,可以通过以下步骤实现:

  1. 使用两个指针 i 和 j,分别指向字符串的头和尾;
  2. 当 s[i] == s[j] 时,继续将 i 向前移动一位,将 j 向后移动一位;
  3. 当 s[i] != s[j] 时,说明该字符串不是回文串。

使用双指针法来解决字符串操作问题的好处是,在遍历字符串的过程中,可以减少一些不必要的计算,提高算法的效率。此外,这个技巧也有一定的考验能力的作用,因为需要根据不同的问题思考如何利用双指针来遍历字符串,并且需要对指针的移动进行合理的控制,避免出现错误的情况。

积灰这么久,这个当时被收藏的东西对现在的你还有用吗?

我收藏的技巧是利用双指针法来解决一些字符串操作问题的。现在看来,这个技巧仍然非常有用,因为对于字符串操作问题,利用双指针法可以提高程序的效率,减少不必要的计算,并且可以帮助我们更加清晰地思考问题。

在我最初收藏这个技巧的时候,主要是为了解决一些字符串操作问题,例如回文子串、最长回文子序列、最长公共前缀等问题。这些问题在我目前的工作中并不是非常常见,但是当我需要解决这些问题时,这个技巧就可以派上用场。

此外,这个技巧还可以帮助我们更加深入地理解双指针法的原理和应用场景,对我们的编程能力和算法思维也有一定的提升作用。

因此,尽管这个技巧积灰了一段时间,但我仍然认为它对我来说非常有用,并会在需要的时候继续使用它。

后记

收藏的东西都是有意义的,但随着时间的流逝,我们的需求和兴趣也可能会改变。因此,重新审视收藏品是很有必要的,这能够让我们更好地理解自己,知道什么对目前的生活和成长有帮助,什么则是多余的。重新思考当初收藏这个东西的原因,也能让我们更好地了解自己的需求和兴趣,从而更好地做出决策。

收藏只是开端,行动才是关键。以下是我收藏的一些好东西:

  1. 睡眠周期计算器(网站)
    这个网站可以根据你的上床和起床时间计算出你的睡眠周期,以及建议你在什么时间入睡和醒来。我之前一直无法调整好自己的睡眠时长和质量,但使用了这个工具以后,我成功地将自己的睡眠优化起来了。

  2. 思维导图
    我喜欢用思维导图整理自己的思路,尤其是在写作或做项目时。我曾经使用过一些思维导图工具,但最终选择了MindNode。它简单易用,功能强大,对提高我的工作效率和整理思路有很大帮助。

  3. 沉浸式阅读模式(浏览器插件)
    这个浏览器插件可以去除文章中的干扰元素,让你更专注地阅读文章内容。我使用它的时候,可以很快地进入状态,理解文章的核心思想,并且减少了阅读时的疲劳感。

这些东西都是我在生活和工作中用到的,而且我相信它们对我未来的发展也会有所帮助。重新审视自己的收藏品,选择那些对自己有用的东西并行动起来,才能真正让收藏有所价值。

转载自:https://blog.csdn.net/u014727709/article/details/132031708
欢迎start,欢迎评论,欢迎指正

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/818045.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

巨人互动|Google海外户Google SEO关键词工具有哪些?

Google SEO是网站优化的重要工具之一,可以通过优化关键词来提升网站在搜索引擎结果页面的排名。而Google SEO关键词工具是帮助网站管理员和营销人员找到最有效关键词的工具。Google SEO关键词工具是一组被广泛使用的在线工具,可以帮助网站管理员和营销人…

初学者预算不多,千元内新手入门吉他推荐!恩雅X0和VEAZEN费森CLR300怎么样?全方面对比评测!

千元内入门吉他少不了VEAZEN费森CLR300单板系列和恩雅X0 HPL合板系列这两款热门系列,最近很多初学者朋友来私信,咨询这两款琴有什么优缺点,哪一款更值得初学者选购,那么今天,就以它们为本期的评测主角,全方…

阿里用户序列建模SIM

Search-based User Interest Modeling with Lifelong Sequential Behavior Data for Click-Through Rate Prediction 摘要 MIMN是工业解决方案中第一个可以对用户序列长度达到1000的数据进行建模。但MIMN无法精确捕获给定用户兴趣的特定候选项目时,长度为用户行为…

3.playbook剧本二

文章目录 playbook二Roles模块roles模式安装LNMP创建nginxfiles目录handlers目录tasks目录templates目录vars目录 创建mysqltasks目录 创建phpfiles目录handlers目录tasks目录templates目录vars目录 创建LNMP剧本文件 playbook二 Roles模块 角色的作用:把playbook…

海外网红营销:品牌如何借助网红力量打造口碑传播?

随着全球化的不断推进,品牌在海外市场的竞争日趋激烈。在这样的市场环境中,口碑成为品牌赢得消费者信任和忠诚度的重要手段。然而,在海外市场中树立良好的口碑并吸引目标受众,是一个充满挑战的任务。如今,随着社交媒体…

生产者消费者模型——条件变量与信号量

文章目录 模型条件变量信号量(信号灯)应用伪代码 模型 生产者、消费者用线程 容器用链表 条件变量 条件变量不是锁,可以控制线程阻塞与否,可以配合锁使用。 注意:当pthread_cond_wait(&cond, &mutex)使用时&…

【投资笔记】(23/7/31)下半年消费复苏的机会来了?

本文为本人投资逻辑验证,不作为任何建议; 政策面 汽车:(一)优化汽车购买使用管理(二)扩大新能源汽车消费,重点在于新能源汽车;房地产:(三&#x…

TWILIGHT靶场详解

TWILIGHT靶场详解 下载地址:https://download.vulnhub.com/sunset/twilight.7z 这是一个比较简单的靶场,拿到IP后我们扫描发现开启了超级多的端口 其实这些端口一点用都没有,在我的方法中 但是也有不同的方法可以拿权限,就需要…

【数据分析专栏之Python篇】三、全网最细Numpy教程

文章目录 前言一、Numpy概述1.1 NumPy 简介1.2 NumPy 安装1.3 NumPy 操作 二、Ndarray 对象2.1 概述2.2 特点2.3 Ndarray类2.4 数据类型 三、Numpy 常用操作及函数3.1 数组属性3.2 创建数组3.3 数组维度变换3.4 ndarray数组的索引和切片3.5 ndarray数组的运算3.6 利用ndarray进…

记一次phpmyadmin巧妙利用

声明:文中涉及到的技术和工具,仅供学习使用,禁止从事任何非法活动,如因此造成的直接或间接损失,均由使用者自行承担责任。 点点关注不迷路,每周不定时持续分享各种干货。 原文链接:众亦信安&a…

辅助栈、单调栈与单调队列在lc中的应用

为什么要汇总在一块? 三者都有何区别? 总结 1 泛化性更好的策略 个人建议单调栈/队列中存放的元素最好是下标而不是值,因为有的题目需要根据下标计算,这样泛化性更好。参考lc239和lc496 2 单调队列何栈其实可以共用同一套模板…

【个人笔记】Linux 服务管理两种方式service和systemctl

service命令与systemctl 命令 service 命令与传统的 SysVinit 和 Upstart 初始化系统相关。较早期的 Linux 发行版(如早期的 Ubuntu、Red Hat 等)使用了这些初始化系统。service 命令用于启动、停止、重启和查询系统服务的状态。虽然许多现代 Linux 发行…

【Python目标识别】Labelimg标记深度学习(YOLO)样本

人工智能、ai、深度学习已经火了很长一段时间了,但是还有很多小伙伴没有接触到这个行业,但大家应该多多少少听过,网上有些兼职就是拿电脑拉拉框、数据标注啥的,其实这就是在标记样本,供计算机去学习。所以今天跟大家分…

(学习笔记-内存管理)如何避免预读失效和缓存污染的问题?

传统的LRU算法存在这两个问题: 预读失效 导致的缓存命中率下降缓存污染 导致的缓存命中率下降 Redis的缓存淘汰算法是通过实现LFU算法来避免 [缓存污染] 而导致缓存命中率下降的问题(redis 没有预读机制) Mysql 和 Linux操作系统是通过改进…

MPLS 虚拟专用网--跨域OptionA方案

域间概述 随着MPLS VPN解决方案的广泛应用,服务的终端用户的规格和范围也在增长,在一个企业内部的站点数目越来越大,某个地理位置与另外一个服务提供商相连的需求变得非常的普遍,例如国内运营商的不同城域网之间,或相互协作的运营商的骨干网之间都存在着跨越不同自治域的…

在 Amazon DocumentDB 里处理 Decimal128类型数据的解决方案

一道简单的数学题 在开始今天的内容之前,我们先计算一道简单的数学题。0.1 X 0.2 ?我相信很多人都笑了,0.02,这是一个孩童都可以回答得出的答案。我们用这道数学题问一下计算机,看看结果又是怎样。 亚马逊云科技开发…

关于我对刚开始学Java的小白想分享的内容:

编程是很有魅力的,让很多人为之痴迷 如果你是初学者,俗称小白,不妨看看下述内容: 文章目录 1. Java 简介1.1 特性介绍1.简单性2. 面向对象3. 分布式4. 健壮性5. 安全性6. 体系结构中立7. 可移植性8. 解释型9. 高性能10. 多线程11…

【javascript】关于path-package

背景 一个老的vue项目,预览pdf文件的时候,电子签章不显示 解决方案 由于是老项目,升级版本存在风险,然后又找到一些解决方案,都是修改源码,修改源码就引出了今天的主题 path-package,我们需要…

maven项目、springboot项目复制文件进来后没反应、不编译解决方法

问题如下 把文件复制进springboot项目后,没反应,不编译。 解决 在maven工具框中选择compile工具,运行即可。

cicd实验

系列文章目录 文章目录 系列文章目录一、1.2. 二、安装并使用1.安装gitlab2.//Jenkins安装3. 总结 一、 1. 2. 二、安装并使用 需要三台服务器一台安装gitlab 192.168.169.10 第二台负责 安装jenkins 192.168.169.20 第三台是负责业务 192.168.169.30 1.安装gitlab yum in…