刷 leetcode 700+ 题的一些感受

2023-11-06

刷题过程

我相信很多人和我一样,刷题步骤是:
一、打开 leetcode
二、注册帐号
三、做第一题,“两数之和”
四、不会,劝退。最后该干嘛干嘛去了,算法此路不通
在这里插入图片描述

心理准备

这是一场持久战!
这是一场持久战!
这是一场持久战!
  可能你打开leetcode你会发现一共有2000+道题,并且这个数量还在不断增加。这时你会想700道题才多少,我手一抬就是100+,再一抬200+,两三个月700+不是梦,要是这么想的话,你会望山跑死马的。这里可以看到,我“只”刷了700道题,也超过全网95%的程序员了。我连续刷了一年多,那怕一天刷十小时以上,也没有一天刷超过10道题的。因为还要工作,一般一天两三道题,都要刷到晚上十二点了,2000+道刷到下辈子应该能行,来世再做Java人。
请添加图片描述

  好在后面很多题都是重复的思路,至于700题什么概念呢,2021大厂题,时间给够的情况,能做对80%以上吧。hard题看命,中等,简单的能秒。我们这里只需要简单对比下 1~10 的题解数,和100 ~ 110的题解数量,我们就可以发现,大家的热情在渐渐变低,所以只要你坚持下去,就可以随便超过80%的人
在这里插入图片描述
在这里插入图片描述
  这里要做好的心理准备是,刷题做好打持久战的准备,不要想一天吃成胖子,一周瘦十斤,三个月考清华,这样你不焦虑谁焦虑,刷多了,这就融进你的生活的,一天不刷,是混身难受

刷题方法

  其实直接刷题是有一定问题的,问题在哪儿呢,除非你是刚学完 数据结构常用算法 的学生,否则你应该把基础学好或复习好。用时间学好基础功,是不影响你学花招式的。我的学习路线是先看了两本书,算法图解算法(第4版) 打底,第一本书只看了一两周,第二本差点给我整劝退了,不过经典就是经典,除了没讲动态规划以外,其它讲的都很好,看了整整一个月,而后看了很多leetcode 刷题的视频,最后开始刷题时,就如有神助了
在这里插入图片描述
那还有快点的方法吗,有,按分类刷,边刷题,边复习

刷题方式

  就像高考刚结束,是这辈子知识最“ 广泛 ”最“ 渊博 ”的时候,我刚刷完700多道题,感觉也是最有做题手感的时候,我打算把自己的一点经验分享给大家。其实题目的规律是有迹可循的,其大概可以分为:数组链表哈希表图论字符串双指针队列与堆并查集模拟位运算数学滑动窗口排序回溯贪心动态规划设计 等等。接下来我会分这几类,总结下刷题的心得博客,其中题目包含leetcode 1 - 300 题和其它一些经典题,希望能帮助到大家

算法系列目录

《算法系列》之刷题准备
《算法系列》之数组
《算法系列》之链表
《算法系列》之哈希表
《算法系列》之图论
《算法系列》之字符串
《算法系列》之双指针
《算法系列》之栈
《算法系列》之队列与堆
《算法系列》之并查集
《算法系列》之模拟
《算法系列》之位运算
《算法系列》之数学
《算法系列》之树
《算法系列》之滑动窗口
《算法系列》之排序
《算法系列》之回溯
《算法系列》之贪心
《算法系列》之动态规划
《算法系列》之设计

最后

欢迎大家收藏关注评论

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

刷 leetcode 700+ 题的一些感受 的相关文章

  • 如何从Firebase Firestore实时更新文档中获取修改后的字段或数据? [复制]

    这个问题在这里已经有答案了 我有多个文档 我的问题是我无法获取修改的特定数据 我正在获取完整的文档 db collection employees whereEqualTo OID OID addSnapshotListener new E
  • 使用 JDBC 获取 Oracle 11g 的最后插入 ID

    我是使用 Oracle 的新手 所以我将放弃之前已经回答过的内容这个问题 https stackoverflow com questions 3131064 get id of last inserted record in oracle
  • Guice 忽略注入构造函数参数上的 @Nullable

    我正在使用 Guice v 3 0 并且有一个值被注入到构造函数中 该值可以为 null 因此我在构造函数中使用 Nullable 来自 javax annotations 注释了该参数 public MyClass Parameter1
  • 使用 WebDriver 单击新打开的选项卡中的链接

    有人可以在这种情况下帮助我吗 场景是 有一个网页 我仅在新选项卡中打开所有指定的链接 现在我尝试单击新打开的选项卡中的任何一个链接 在下面尝试过 但它仅单击主 第一个选项卡中的一个链接 而不是在新选项卡中 new Actions drive
  • Android 中的列表(特别是 RecyclerView 和 CardView)如何工作

    请原谅我问这个问题 但我是 Android 开发新手 尽管我正在尝试了解developer android com 网站上的基础知识 但大多数示例 即使他们说它们是为 Android Studio 构建的 尚未设置为使用 Gradle 因此
  • Base36 编码字符串?

    我一直在网上查找 但找不到解决此问题的方法 在 Python Ruby 或 Java 中 如何对以下字符串进行 Base 36 编码 nOrG9Eh0uyeilM8Nnu5pTywj3935kW 5 Ruby 以 36 为基数 s unpa
  • 如何使用 JAVA 代码以编程方式捕获线程转储?

    我想通过 java 代码生成线程转储 我尝试使用 ThreadMXBean 为此 但我没有以正确的格式获得线程转储 因为我们正在使用jstack命令 请任何人提供一些帮助 他们是否有其他方式获取线程转储 使用任何其他 API 我想要的线程转
  • 如何使用正则表达式验证 1-99 范围?

    我需要验证一些用户输入 以确保输入的数字在 1 99 范围内 含 这些必须是整数 Integer 值 允许前面加 0 但可选 有效值 1 01 10 99 09 无效值 0 007 100 10 5 010 到目前为止 我已经制定了以下正则
  • 虽然我的类已加载,但 Class.forName 抛出 ClassNotFoundException

    代码如下 它的作用是加载我放在主目录中的 jar 文件中的所有类 import java io File import java util jar JarFile import java util jar JarEntry import j
  • 如何删除日期对象的亚秒部分

    当 SQL 数据类型为时间戳时 java util Date 存储为 2010 09 03 15 33 22 246 如何在存储记录之前将亚秒设置为零 例如 在本例中为 246 最简单的方法是这样的 long time date getTi
  • Spring Data JPA:查询如何返回非实体对象或对象列表?

    我在我的项目中使用 Spring Data JPA 我正在演奏数百万张唱片 我有一个要求 我必须获取各种表的数据并构建一个对象 然后将其绘制在 UI 上 现在如何实现我的 Spring 数据存储库 我读到它可以通过命名本机查询来实现 如果指
  • 如何从日期中删除毫秒、秒、分钟和小时[重复]

    这个问题在这里已经有答案了 我遇到了一个问题 我想比较两个日期 然而 我只想比较年 月 日 这就是我能想到的 private Date trim Date date Calendar calendar Calendar getInstanc
  • 我们如何测试包私有类?

    我正在看书Effective Java in Item 13 Minimize the accessibility of classes and members 它提到 为了方便测试 您可能想让类 接口或成员更易于访问 这在某种程度上是好的
  • JAVA中遍历JSON数据

    我是 JSON 新手 我使用 HTTPUrlConnections 并在 JAVA 程序中获得一些响应 响应数据将类似于 data id 1 userId 1 name ABC modified 2014 12 04 created 201
  • Java - 从 XML 文件读取注释

    我必须从 XML 文件中提取注释 我找不到使用 JDOM 或其他东西来让它们使用的方法 目前我使用 Regex 和 FileReader 但我不认为这是正确的方法 您可以使用 JDOM 之类的东西从 XML 文件中获取注释吗 或者它仅限于元
  • 如何处理 StaleElementReferenceException

    我正在为鼠标悬停工作 我想通过使用 for 循环单击每个链接来测试所有链接的工作条件 在我的程序中 迭代进行一次 而对于下一次迭代 它不起作用并显示 StaleElementReferenceException 如果需要 请修改代码 pub
  • HttpClient请求设置属性问题

    我使用这个 HttpClient 库玩了一段时间 几周 我想以某种方式将属性设置为请求 不是参数而是属性 在我的 servlet 中 我想使用 Integer inte Integer request getAttribute obj 我不
  • ArrayList.clear() 和 ArrayList.removeAll() 有什么区别?

    假如说arraylist定义为ArrayList
  • 将对象从手机共享到 Android Wear

    我创建了一个应用程序 在此应用程序中 您拥有包含 2 个字符串 姓名和年龄 和一个位图 头像 的对象 所有内容都保存到 sqlite 数据库中 现在我希望可以在我的智能手表上访问这些对象 所以我想实现的是你可以去启动 启动应用程序并向左和向
  • 基于 Spring Boot 的测试中的上下文层次结构

    我的 Spring Boot 应用程序是这样启动的 new SpringApplicationBuilder sources ParentCtxConfig class child ChildFirstCtxConfig class sib

随机推荐

  • 钉钉内网测试-超简单

    环境 win10 python3 钉钉内网穿透官网 两步实现内网穿透 一 下载穿透工具 穿透工具 11 8M 然后启动 进入命令行 cd windows 64 ding config ding cfg subdomain abcde 808
  • expdp数据泵导出oracle某表带时间查询的写法

    expdp scott tiger orcl directory dump dir dumpfile expdp dmp tables emp query where tjsj to date 2020 03 yyyy mm
  • yolop源码train.py学习

    因为要做一个可行驶区域和车道线的任务 所以选了yolop 看他的刷榜还可以 yolop的算法解读后边找了链接再贴出来 花花花大神的博客 我们先从 tools train py 开始debug train py 结构 import xxx d
  • linux入门之awk和shell变量传递

    一 awk使用shell中的普通变量 方法1 使用引号法 aa hello awk BEGIN print aa 输出 aa awk BEGIN print aa 输出hello awk BEGIN print aa 输出空 aa hell
  • metasploit(MSF)渗透超细解说 -- 小黑渗透工具

    metasploit Framework msf 里带数千个已知的软件漏洞 并保持持续更新 Metasploit可以用来信息收集 漏洞探测 漏洞利用等渗透测试的全流程 采用Ruby语言编写 黑掉整个宇宙的称号 初心 记录msfconsole
  • 比尔·盖茨的传奇

    比尔 盖茨的传奇 传奇人生始自少年 比尔盖茨的编程人生在他十三岁就开始了 他进入了湖畔中学 LakesideSchool 湖畔中学是当时为数不多的拥有计算机 PDP 10 的学校 但是机器使用时间严重受限 因而比尔盖茨和计算机公司达成了协议
  • 黑马程序员Spring视频教程,全面深度讲解spring5底层原理 学习笔记

    介绍 代码仓库地址 https gitee com CandyWall spring source study 跟着黑马满一航老师的spring高级49讲做的学习笔记 本笔记跟视频内容的项目名称和代码略有不同 我将49讲的代码每一讲的代码都
  • (三)获取linux内核的系统信息

    这一章 使用qt来获取linux内核的系统信息并显示到界面上 这里的系统信息包括CPU的使用率 CPU的温度 内存信息以及硬盘信息 CPU温度 NanoPI Fire3的开发团队为系统提供了读取CPU温度的接口 一个设备文件 使用命令查看C
  • Web开发语言简介

    JSP了解的不多EJB JSP开发企业级应用轻量级的有StructAsp net日渐成熟随着Vs2005的发行微软开始大力推行VS开发应用VS2005集成了一整套的应用也达到了微软的一般标准会用鼠标的都能操作数据库制作一个网站 aspVBS
  • 掌上和平精英服务器维护要多久,和平精英身份识别卡时间多久 拾取时间限制介绍...

    和平精英上线队友召回模式之后 相信有大批的玩家涌入新模式 那么大家肯定也都知道识别卡是有时间限制的 如果对手死蹲队友的盒子 我们是很难接近的 快来看看和平精英身份识别卡时间多久吧 队友被筛选之后变成了盒子 在他的盒子里面会有一张身份辨认卡
  • CSS水平垂直居中常见方法总结

    说明 本篇文章只是总结一些方法 例子用到的各个元素属性不做解释 详情请看MDN文档 非常的详尽 例子在chrome浏览器下完全好使 IE这个渣渣 附上链接 https developer mozilla org zh CN 本文出现的错误
  • 中国支付清算体系-CNAPS

    中国的支付清算有两套体系 中国现代化支付清算系统和第三方支付清算系统 当你去ATM取钱时 用的是央行的CNAPS 中国现代化支付清算系统 当你用支付宝买买买时 用的是第三方支付的清算系统 这里先介绍第一部分 CNAPS 1 当你在ATM取钱
  • esxi管理端口_ESXI虚拟机创建LACP动态链路汇聚网络负载均衡教程

    大家好 我是村里的萝卜头 今天给大家分享的是ESXI虚拟机添加LACP动态链路汇聚负载均衡教程 动态LACP汇聚是一种系统自动创建 删除的汇聚 不允许用户增加或删除动态LACP汇聚中的成员端口 只有速率和双工属性相同 连接到同一个设备 有相
  • python2定点找色,Python-找到相似的颜色,最好的方法

    我已经创建了一个函数来查找图像中的颜色 并返回x y 现在我需要添加一个新函数 在这里我可以找到具有给定公差的颜色 应该很容易吗 在图像中查找颜色并返回x y的代码 def FindColorIn r g b xmin xmax ymin
  • oCPC和CPC之间的区别

    oCPC官方给出的概念是 智能出价 注重转化 CPC是指按点击付费的结算方式 广告主给每次点击的价钱 从这两点就可以看出来 oCPC比CPC更加符合企业主需求的转化效果 但其实两者的结算方式是一样的 都是按点击计费 不同的是oCPC的智能化
  • 人工智能——数据挖掘1

    1 概述 从技术角度 数据挖掘 data mining 是从大量的不完全的 有噪南的 模糊的随机的实际应用数据中提取隐含在其中的 人们事先不知道的 但又是潜化有用的信身和知识的过程 与数据挖掘相近的同义词包括数据融合 数据分析和决策持第 预
  • 期货开户无为的趋势跟踪

    一 短线交易 很多知名的短线高手都有逆天的稳定低回撤向右上方倾斜的资金曲线 十分诱人 短线交易也是让人以为最容易实现暴富的交易风格 大部分人都是从短线开始做交易的 因为每次都赚让人有良好的感觉 但实际上短线交易的难度是非常大的 难就难在短线
  • Python生成器

    1 生成器 生成器是一种特殊的迭代器 它是通过函数来实现的 生成器函数每次执行到yield语句时 会返回yield后面的值 并暂停函数的执行 下次调用生成器时 会从上一次暂停的位置继续执行 这种方式可以节省内存 因为不需要一次性生成所有的值
  • 替换手机号中间4位(php,js)

    JS方法 function hideMobile num var mphone num substr 3 4 var lphone num replace mphone return lphone php方法 phone substr re
  • 刷 leetcode 700+ 题的一些感受

    刷题过程 我相信很多人和我一样 刷题步骤是 一 打开 leetcode 二 注册帐号 三 做第一题 两数之和 四 不会 劝退 最后该干嘛干嘛去了 算法此路不通 心理准备 这是一场持久战 这是一场持久战 这是一场持久战 可能你打开leetco