摸着石头备战算法题_两人拿石头算法问题-程序员宅基地

技术标签: 洛谷  算法  java  

写在前面

本人普通二本大三,大一开始加的实验室,工程方向,主要就是javaweb。因为决定要考研,因为考研院校复试涉及到算法,觉得趁现在应该先学一下算法,至少形成一个算法体系,入个门。准备先拿这个听说不是很难的蓝桥杯下手(知乎上的牛牛们都这样说),我报名了今年大学javaB组(选择java是因为自己比较熟悉java),主要是想通过比赛,形成一个算法体系。这个博客我注册了两年了。也空闲了两年。觉得应该写一下博客,主要记录算法,来记录一下我的成长就有了此篇,往后也会定期更新,希望自己能坚持。

行动方针

成功=正确的方法+努力。通过身边算法大牛的指导,还有网上的心得,我形成了一个客观的方法。

1、数据结构和算法教学视频

有很多大牛推荐很多算法书籍,比如算法笔记,算法竞赛紫皮书等等,但是这些都是C或者C++,我只熟悉java,看起来很难受。推荐《算法》第四版这个是java写的。但是只看书很难啃!!!我觉得看视频适合入门,可以理清楚基本思路。然后对应着视频章节看书的对应章节学习。

  • 资料分享
算法视频:

链接:https://pan.baidu.com/s/186pVzwQ5IV7qnW1Se0SsAQ 提取码:ap80

算法书:《算法》第四版PDF

链接:https://pan.baidu.com/s/1AeZ0pYCcVkxASHmlKXow6Q
提取码:ry0s

2 、刷题

2.1 刷题网站:洛谷
洛谷 网站:https://www.luogu.com.cn/

前期刷题,选择洛谷是因为题目他由易到难,有专题分类,正对一个专项练习个人觉得比较有效果,有一种进阶的感觉。而且相对而言比LeetCode简单适合入门。

image:洛谷的第一阶段专题分类

在这里插入图片描述

2.2 LeetCode
后期准备上难度刷一下LeetCode。
2.3 刷题模板
刷题一定要做笔记,方便自己复习,把自己做题的经历记录下来。我强烈安利 OneNote,下图为我在OneNote的一个空的模板,以后的博客我也会按照此模板。下面我会解释我模板每个模块的意义。

在这里插入图片描述

2.3.1 题目
省时间直接网站题目截图或者复制即可。
2.3.2 思考
刷题要注意质量多思考,把读到题目的第一瞬间想到什么写什么。刷题一定要头脑风暴多想。遇到不会的题,不要急着网上搜解析,遇到一个问题,先把自己想到的点,一个一个记录下来。
2.3.3 自己解法和解析
自己做出来的解法不管完没完拿出题目,就把自己的程序截图,放在这里,一定要大胆写动手代码,不要眼高手低。并且解析,可以从这个几个方面进行解析
  1. 做题过程中遇到的java语法问题,及时查漏补缺。
  2. 做题过程中遇到的瓶颈无法解决的问题。
  3. 解题过程中自己少考虑的问题。
2.3.4 官方方法和解析
  1. 把官方解法自己独立完成一遍。并且截图放在笔记中。
  2. 学习解析自己觉得官方方法值得学习的点。
  3. 解析官方方法让你一看就觉得秒的点。
2.4 不要眼高手低
无论是自己独立完成的解题,还是网上搜的解析,都应该自己独立,什么都不看,自己写,把一个题做三遍。自己独立写代码而且多写是重知之重!!!

结尾

列几句话大家品!
功在平时; 厚积薄发; 少则多,多则惑; 纸上得来终觉浅,绝知此事要躬行。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_41978688/article/details/103904498

智能推荐

Servlet Response直接返回JSON数据_servlet response返回数据-程序员宅基地

文章浏览阅读1.7w次,点赞9次,收藏21次。获取打印输出流打印输出流:response.getWriter() 返回的是 PrintWriter可以通过 response.getWriter().write()和response.getWriter().print()响应数据给客户端,如果前端没有接收数据的位置,就会在浏览器上生成一个新的页面来显示内容。区别:write():仅支持输出字符类型数据,字符、字符数组、字符串等print():可以将各种类型(包括Object)的数据通过默认编码转换成bytes字节形式,这些字节都通过writ_servlet response返回数据

JAVA毕业设计Web企业差旅在线管理系统计算机源码+lw文档+系统+调试部署+数据库_基于javaweb的差旅报销系统毕业设计-程序员宅基地

文章浏览阅读98次。JAVA毕业设计Web企业差旅在线管理系统计算机源码+lw文档+系统+调试部署+数据库。springcloud基于微服务架构的小区生活服务平台的设计与实现。jsp会议管理系统的设计与实现sqlserver。ssm+sqlserver精准扶贫项目管理系统。ssm+sqlserver音乐资源分享网站。ssm基于Web的精品课程网站的设计与实现。ssm基于JavaEE的网上图书分享系统。_基于javaweb的差旅报销系统毕业设计

ERROR: The executable **/python.exe is not functioning解决方案_error: the executable g:\workspace\pythonproject\v-程序员宅基地

文章浏览阅读2.4k次。我是从3.8.3更新到3.11.4,pycharm版本是2020.1.2,所以网上说的更改文件权限、检查路径是否有中文我统统都试过了,所以我狠心直接重装新版本的2022.3.3,一顿操作过后发现能成功创建project了也不报错。将python版本更新后,使用pycharm突然无法创建虚拟环境virtualenv失败,提示路径从C:\Users\Lenovo\AppData\Local\下的什么什么到创建的路径的下的什么什么 我这里已经解决了忘记截图保存。_error: the executable g:\workspace\pythonproject\venv\scripts\python.exe is

【计算机毕业设计】189电商平台-程序员宅基地

文章浏览阅读80次。如今社会上各行各业,都喜欢用自己行业的专属软件工作,互联网发展到这个时候,人们已经发现离不开了互联网。新技术的产生,往往能解决一些老技术的弊端问题。因为传统商品交易信息管理难度大,容错率低,管理人员处理数据费工费时,所以专门为解决这个难题开发了一个电商平台,可以解决许多问题。电商平台可以实现商家管理,商品订单管理,用户管理,商品管理,商品评价管理等功能。该系统采用了Mysql数据库,Java语言,Spring Boot框架等技术进行编程实现。电商平台可以提高商品交易信息管理问题的解决效率,优化商品交

js处理xml文件,成execl格式_js浏览器环境excel转xml-程序员宅基地

文章浏览阅读344次。nginx配置映射,js读取xml文件,整理成规整excel格式的字符传_js浏览器环境excel转xml

springboot整合jett实现模板excel数据导出_spring boot 导出模板数据-程序员宅基地

文章浏览阅读648次。jett是使用Excel电子表格模板快速创建Excel电子表格报告的工具。_spring boot 导出模板数据

随便推点

ArcGIS Engine IGeometry和WKB的转换_arcgis shape字段wkb-程序员宅基地

文章浏览阅读3.2k次。wkt 、wkb、几何对象的转换_arcgis shape字段wkb

Ubuntu14.04 64位运行32位程序 ./qt-creator-linux-x86-opensource-2.6.1.bin 问题解决_error while loading shared libraries: libgobject-2-程序员宅基地

文章浏览阅读972次。./qt-creator-linux-x86-opensource-2.6.1.bin./qt-creator-linux-x86-opensource-2.6.1.bin:: error while loading shared libraries: libgobject-2.0.so.0: cannot open shared object file: No such file or ..._error while loading shared libraries: libgobject-2.0.so.0: cannot open share

基于GitLab+Docker+K8S的持续集成和交付_getlab ci kubectl kubeconfig-程序员宅基地

文章浏览阅读5.5k次。基于GitLab+Docker+K8S的持续集成和交付_getlab ci kubectl kubeconfig

EMQX5.0使用Mysql认证,和Navicat Mysql数据库连接_emqx连接mysql-程序员宅基地

文章浏览阅读3.4k次,点赞2次,收藏33次。在阿里云的服务器内安装好EMQX后,接下来使EMQX和Mysql数据库连接。_emqx连接mysql

浏览器中支持硬件加速_video acceleration information-程序员宅基地

文章浏览阅读3.9k次。1 什么是硬件加速硬件加速是指,应用程序使用计算机硬件的能力,比软件实现的功能能够更有效地执行某些操作。在 Chrome/Chromium 浏览器中,硬件加速能够利用计算机的图形处理单元(GPU)来处理图形密集型任务,例如:播放视频、浏览地图、网页渲染、游戏或需要更快数学运算的任何内容。通过分离特定任务,您的 CPU 就有机会专注于处理其它事务,而 GPU 则专门负责处理图形密集型任务的进程。2 硬件加速包括哪些内容硬件加速通常包括3D图形加速和视频硬件解码加速两部分。3 支持硬件加速需要满_video acceleration information

Python安装Crypto库报错(from Crypto.Cipher import AES ModuleNotFoundError: No module named ‘Crypto‘)_from cryptodome.cipher import aes modulenotfounder-程序员宅基地

文章浏览阅读1.2k次。Python安装Crypto库报错_from cryptodome.cipher import aes modulenotfounderror: no module named 'cryp

推荐文章

热门文章

相关标签