Day65:代码随想录训练营总结

两个月的算法训练营之旅圆满落幕,回首这段时光,我深感自己错过了许多早日成长的机会,如今不禁懊悔没有更早地报名参与。

这段充实的日子里,我遵循着训练营精心设计的计划,攻克了上百道力扣题目。从最初对编程语法的生疏,到逐渐能够不依赖题解,独立形成解题思路,我切实地感受到了自己在算法领域的成长与蜕变。代码随想录的题目编排匠心独运,从简单到复杂,循序渐进,让我在不知不觉中轻松踏入了算法世界的大门。其中,回溯篇给我留下了尤为深刻的印象。回溯法将问题抽象为树形结构,这种思维方式对我而言是全新的,让我对回溯原理有了更深刻的理解,也解决了过去对递归代码难以捉摸的困惑。

在学习回溯之前,我深刻体会到对树遍历的熟悉是必不可少的,而代码随想录正是按照这样的逻辑顺序来安排的。因此,我衷心建议准备刷题的同学们,一定要按照教程的顺序逐步深入,这样才能最大化地收获知识。

在运用回溯法时,我逐渐领悟到递归三部曲的重要性:首先明确返回值和参数的类型,接着确定递归的结束条件,最后梳理清楚单层递归的逻辑。起初,我并未给予这三步足够的重视,认为只要有个大致的思路就可以,但在实际操作中,我却频频遭遇bug的困扰。正是这些挫折让我意识到,遵循三部曲能够使我的代码更加严谨、思路更加清晰。

在动态规划的学习中,我深刻体会到画表的重要性。很多时候,单纯的递推公式难以让我理解透彻,但当我拿起笔在草稿纸上画出表格,做好初始化,按照递推公式逐步填表时,那些原本难以捉摸的概念突然变得清晰起来。

面对难题时,我曾感到烦躁和沮丧,尤其是在独自刷题时,我甚至有过放弃的念头。但加入训练营后,看到身边的伙伴们仍在坚持,我便告诉自己不能轻言放弃。正是这样的坚持,让我跨越了一个又一个难关,对算法的理解也愈发深刻。

如今,虽然算法训练营已经告一段落,但我的刷题之路仍在继续。感谢代码随想录提供的免费教程,为我打下了坚实的算法基础。未来,我将继续探索这个充满挑战与乐趣的领域,期待自己在算法的道路上走得更远、更稳。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C++】Vector详解

Vector是什么&#xff1f; vector是C&#xff08;STL&#xff09;中的一种序列容器Vector是一个动态数组&#xff0c;内存空间是连续的&#xff0c;支持随机访问&#xff0c;支持迭代器访问 Vector代码实现 变量指向 代码初始化 #include<iostream> using namespace …

【教程向】从零开始创建浏览器插件(四)探索Chrome扩展的更多常用API

探索Chrome扩展的更多常用API 在Chrome扩展开发中&#xff0c;除了最基础的API外&#xff0c;Chrome还提供了一系列强大的API&#xff0c;允许开发者与浏览器的各种功能进行交互。本文将介绍其中几个常用的API&#xff0c;并提供详细的示例代码帮助您开始利用这些API。 书签…

XSS-Labs 靶场通过解析(下)

前言 XSS-Labs靶场是一个专门用于学习和练习跨站脚本攻击&#xff08;XSS&#xff09;技术的在线平台。它提供了一系列的实验场景和演示&#xff0c;帮助安全研究人员、开发人员和安全爱好者深入了解XSS攻击的原理和防御方法。 XSS-Labs靶场的主要特点和功能包括&#xff1a;…

VMware虚拟机中Linux系统奔溃,怎么办?

一大早启动虚拟机准备开始工作&#xff0c;却遭遇到Linux系统崩溃&#xff0c;屏幕上显示以下错误提示&#xff1a; 这段文本看起来是来自系统引导时的日志信息&#xff0c;提到了一些关于文件系统的问题和建议。根据这段信息&#xff0c;似乎 /dev/sda1 分区中的文件系统存在一…

STM32入门周边知识(为什么要装MDK,启动文件是什么,为什么要配置时钟等等)

目录 MDKMDK与C51共存为什么要安装MDK 启动文件是什么&#xff0c;为什么要添加许多文件为什么要添加头文件路径为什么是寄存器配置魔术棒中的define为什么必须先配置时钟杂例 MDK MDK与C51共存 在最开始学习51单片机的时候&#xff0c;当时安装keil的时候&#xff0c;认为就是…

### 【数据结构】线性表--顺序表(二)

文章目录 1、什么是线性表2、线性表的基本操作3、顺序表3.1、顺序表的定义3.2、顺序表的实现方式&#xff1a;静态分配3.3、顺序表的实现方式&#xff1a;动态分配3.4、顺序表的特点3.5、顺序表的初始化与插入操作3.6、顺序表的删除与查询 1、什么是线性表 ​ 线性表是具有相同…

Vue3自定义封装音频播放组件(带拖拽进度条)

Vue3自定义封装音频播放组件&#xff08;带拖拽进度条&#xff09; 描述 该款自定义组件可作为音频、视频播放的进度条&#xff0c;用于控制音频、视频的播放进度、暂停开始、拖拽进度条拓展性极高。 实现效果 具体效果可以根据自定义内容进行位置调整 项目需求 有播放暂停…

云原生周刊:Terraform 1.8 发布 | 2024.5.6

开源项目推荐 xlskubectl 用于控制 Kubernetes 集群的电子表格。xlskubectl 将 Google Spreadsheet 与 Kubernetes 集成。你可以通过用于跟踪费用的同一电子表格来管理集群。 git-sync git-sync 是一个简单的命令&#xff0c;它将 git 存储库拉入本地目录&#xff0c;等待一…

WebRtc 视频通话,语音通话实现方案

先了解一下流程 和 流程图(chatGpt的回答) 实现 (底层代码实现, 可作为demo熟悉) 小demo <template><div><video ref"localVideo" autoplay muted></video> <!-- 本地视频元素&#xff0c;用于显示本地视频 --><video ref"r…

【笔试训练】day23

一、打怪 思路 由于是先手攻击&#xff0c;如果一次攻击就能杀死小怪&#xff0c;那么说明可以为无限杀小怪。 再计算杀一只小怪要扣多少血就好了&#xff0c;再用总生命值去除这个扣血量&#xff0c;得到的就是最多杀死小怪的数量。注意&#xff0c;由于最后一定要活下来&am…

Mysql中表的创建以及数据类型

DDL 在表结构的操作 表的创建 creat table 表名&#xff08; 字段1 字段类型 [约束] &#xff0c; 字段2 字段类型 [约束] &#xff09;[comment 标注释]; create table tb_user(id int comment ID,一行字段的唯一标识,username varchar(20) comment 用户名,name varchar(…

Mura CMS processAsyncObject SQL注入漏洞复现(CVE-2024-32640)

0x01 产品简介 Mura CMS(Content Management System)是一款用于创建和管理网站内容的开源内容管理系统。它具有许多功能和灵活性,使其成为许多网站开发者和内容创作者的首选工具。是一个强大的企业网站解决方案,可用于创建和管理公司网站、产品目录、新闻发布、客户支持和…