大一寒假我在一个oj网站只刷了这些题从此入门了绝大部分通用算法
如果你想入门算法,那么我这篇文章也许可以帮到你。
先说点题外话。这是在一个不冷不热的寒假,照理来说寒假应该很冷,但这个寒假是真的舒服。这样舒服的寒假学习似乎是一件不可能的事情,所以我继续我的游戏生涯,点开了我最近新玩不久的游戏,名字叫做阴阳师,相信有一些小伙伴应该是玩过的。不喜欢随便玩。这个游戏入门应该是比较难。我凭借着一学期的努力(不是努力打阴阳师哈)在别人开始复习期末考试的时候开始了我的阴阳师之旅,每天真的是爱不释手。别人复习我玩游戏真的美滋滋,不过要入门这个游戏真的是费脑筋(玩这个游戏时比较较真),基本上样样东西都需要百度,感觉我的阴阳师入门都够写一篇大文章的。(这次游戏之旅让我明白了只要自己认真学,快速入门一个游戏还是很轻松的)。
至于为什么后面不玩游戏跑去认真刷题目(估计是突然良心发现了吧!捂脸)。如果你有和我差不多的经历或者觉得我的经历有趣,不妨花个0.5秒点个赞,让更多的人看到这篇文章,还有可以关注一下我的公众号(玩编程地码农)啊。接下来吧我一些学习经历分享给你们。
先给大家看一下我oj网站上的记录,这是杭电刷题网站,我不是杭电的,我是一个非常非常普通的本科生。

很水的数据提交错误(WA)的次数太多,但我确确实实是凭借它比大多数人都快速的入门了算法。这里题目不多而且很多是水题,刷水题也有不少好处能让你在学算法题的路上没那么枯燥。
大概有哪些算法呢?这里列出一些我当时做的题(有些不在上面)。题目都是非常非常基础的题目属于入门级别的基本上没有什么变形,可以说相当于模板了。

接下来分享一下当时我是怎么刷这些题的(下面的一些数字要是看着比较烦的话可以不用太关注),我没看任何人的推荐路线去刷这些题(那时候我也不知道还有刷题路线这些东西啊,纯新手对一切一无所知)。登陆进去hdu一般情况下是在第11页开始的(现在好像又从第一页开始了,从哪里开始不要紧),也就是题号是2000,当时懵懵懂懂从2000一直刷到了2058。越到后面感觉有些题目难度就上来了(当然这是对我来说的)。有些题即使是看了很多的题解我还是不会,无奈只能跳过。
一路刷到2058题后,我发现题号是从1000开始的,前面还有好多题没有刷就跳去第一页刷题。所以后面我就从1000开始刷了。不过这次我学聪明了,我没有全部都刷。我只刷一些比较多人刷的题目,这里强烈推荐提交量超过30000的记住是提交量不是通过量,刷这些提交量通过三万的估计是我做过的一个非常机智的选择了,这些提交量三万的题目基本上道道是算法精品,是非常基础的算法题。我一路从1000刷到了2000左右(后面就没怎么刷了)。基本上所有的30000通过量以上的题目都给刷了一遍。刷完感觉自己好像变强了,思维好像也有了一定了提高^_^。
其实刷20000提交量以上也是可以的,那些应该也是一些算法题,有实力的可以这样子做。
如果你问我没有基础去刷这些题会不会困难,额确实是比较难,不过难也就难一个月左右吧。我刷hdu大概刷了一个月(期间痛苦并快乐着),就刷完上面所列的那些题目了。刷这些题的时候我才刚刚开始知道算法大概是个什么东西。我的基础只有大一刷的一些基础C语言题目。开始基本上很多题目都是找百度的。每道题目看了好多个人的题解,大多数时候看的一脸懵逼。很多人应该都和我参不多吧!不应该只有我这么弱吧。
如果你问我一个月够了吗的话。一个月是真的够了,只要你吧一天的主任务放在刷题上,真的可以入门这些非常有用的算法,从此飞黄腾达(其实是掉进了坑哈哈,不过为了钱一切都值得^_^)。如果你再肝一点半个月估计也可以搞定。
这里再分享一下我看题解的一些小技巧。开始刷到算法题(那时候并不知道这些题是算法题)是真的痛不欲生,百度题解一脸懵逼,看了好多题解还是不太懂这道题,不过看多一点题解就是我要分享给你的小技巧。刚学的算法题,随便找一些自己认为比较好的(推荐代码简洁的),然后就去认真的看,看不懂没关系一遍很难看懂的,可以不用继续看他的题解,去看其他人的题解,认真看个几个人的题解,慢慢的你就会这个算法有一些了解,看着看着你就会豁然开朗,感觉看的题解差不多的时候,就从中挑一个自己认为比较简洁的代码去看(记得多问几个为什么),一定要每一个细节都搞明白,为什么这里是这样子,那里是那样子。多动手在纸上模拟(这样子不容易开小差)。
曾国藩说过这样一句话“大处着眼,小处着手;群居守口,独居守心”,我的刷题方法似乎在一定程度上吻合了“大处着眼,小处着手”这八字真言哈哈。这八个字放在哪其实都是可以的。不赞一波吗,再关注一下公众号(玩编程地码农)呀。
如果你问我现在开始学的话晚了吗?你能看到我这篇文章,那就说明不晚,至少你正在找一个让自己变优秀的理由。我没有理由给你,但我用我的实际行动告诉你,只要你坚持一个月,你一定会变得更优秀。相信你学完这些算法会找到让自己变优秀的理由(哪怕是为了钱也好啊)。
如果你不喜欢刷题,想快速入门算法我觉得是不太可能的,学算法一个比较好的办法就是持之以恒的刷题。
这些题量多吗?真心不多,坚持一个月,即使是你没有任何的算法基础,只要你会一门语言,就ok啦。当时我是大一第一学期学了C语言,寒假边学C++边刷hdu的。抬头看了一下日期,假期就快到了,你准备好了吗?其实从你看到这篇文章的时候就可以开始啦。
大一寒假就在著名oj网站上刷题的萌新,关注我以后后给你意想不到的收获,接下来还会有更多的干货,欢迎关注我的公众号(玩编程地码农),我要开始爆发啦。
大一寒假我在一个oj网站只刷了这些题从此入门了绝大部分通用算法的更多相关文章
- 花了一个月的时间在一个oj网站只刷了这些题,从此入门了绝大多数算法
如果你想入门算法,那么我这篇文章也许可以帮到你. oj网站有这么多,当然还有其他的.我当初是在hdu上面刷的,不要问我为什么,问就是当时我也是一个新手,懵懵懂懂就刷起来了.点这里可以进入这个网站htt ...
- 各种OJ网站,刷题必备
各种OJ网站 落谷 vijos JoyOI CodeVS Comet OJ 北京大学 浙江大学 杭州电子科技大学 信息学奥赛一本通 以上就是本蒟蒻所知的OJ网站 收集和打字应该值一个赞吧
- 各种OJ网站汇总
acmicpc.info acmicpc.info http://acmicpc.info/archives/224 此网站聚合了各种ICPC相关信息. 国内Online Judge 用户体验极佳的v ...
- 几个很好的OJ网站
很友好的OJ网站(OJ是open judge,在线评测) POJ 北京大学ACM ZOJ 浙江大学ACM WOJ 武汉大学ACM(一个题目提交通过后,可以查看通过该题的所有代码) 唯一不好的地方是题 ...
- 经典算法和OJ网站(开发者必备-转)
一. Online Judge简介: Online Judge系统(简称OJ)是一个在线的判题系统.用户可以在线提交程序多种程序(如C.C++.Pascal)源代码,系统对源代码进行编译和执行,并通过 ...
- OJ网站程序员必备
一. Online Judge简介: Online Judge系统(简称OJ)是一个在线的判题系统.用户可以在线提交程序多种程序(如C.C++.Pascal)源代码,系统对源代码进行编译和执行,并通过 ...
- java程序怎么在一个电脑上只启动一次,只开一个进程
目录 <linux文件锁flock> <NIO文件锁FileLock> <java程序怎么在一个电脑上只启动一次,只开一个进程> 方案1: 单进程程序可以用端口绑定 ...
- 编码学习---代码OJ网站
代码OJ网站: https://leetcode-cn.com/accounts/login/
- 简单的自动化使用--使用selenium实现学习通网站的刷慕课程序。注释空格加代码大概200行不到
简单的自动化使用--使用selenium实现学习通网站的刷慕课程序.注释空格加代码大概200行不到 相见恨晚啊 github地址 环境Python3.6 + pycharm + chrom浏览器 + ...
随机推荐
- Haproxy/LVS负载均衡实现+keepalived实现高可用
haproxy+keepalived 集群高可用集群转发 环境介绍 #内核版本 Ubuntu 18.04.4 LTS \n \l 107-Ubuntu SMP Thu Jun 4 11:27:52 U ...
- volatile与lock前缀指令
前言 我们知道volatile关键字的作用是保证变量在多线程之间的可见性,它是java.util.concurrent包的核心,没有volatile就没有这么多的并发类给我们使用. 本文详细解读一下v ...
- ABP(ASP.NET Boilerplate Project)快速入门
前言 这两天看了一下ABP,做个简单的学习记录.记录主要有以下内容: 从官网创建并下载项目(.net core 3.x + vue) 项目在本地成功运行 新增实体并映射到数据库 完成对新增实体的基本增 ...
- 传统声学模型之HMM和GMM
声学模型是指给定声学符号(音素)的情况下对音频特征建立的模型. 数学表达 用 \(X\) 表示音频特征向量 (观察向量),用 \(S\) 表示音素 (隐藏/内部状态),声学模型表示为 \(P(X|S) ...
- node+ajax实战案例(4)
4.用户登录实现 4.1.用户登录实现思路 1 用户输入登录信息,点击登录的时候把用户登录的这些信息收集起来,然后组装数据通过ajax方式发送到后台 2 后台接到用户输入的登录信息,把这些信息拿去和数 ...
- 一.5.序列化应用之服务器制造厂与型号app功能
1.环境准备: (python36env) [vagrant@CentOS7 apps]$ django-admin startapp manufacturer (1)激活:'manufacturer ...
- 安装完kali linux之后要做的10件事——113p.cn
1.添加国内更新源(可能不是最好的) vim /etc/apt/source.list 科技大学# deb http://mirrors.ustc.edu.cn/kali sana main non- ...
- 【FastDFS】如何打造一款高可用的分布式文件系统?这次我明白了!!
写在前面 前面我们学习了如何基于两台服务器搭建FastDFS环境,而往往在生产环境中,需要FastDFS做到高可用,那如何基于FastDFS打造一款高可用的分布式文件系统呢?别急,今天,我们就一起来基 ...
- MySQL的数据类型 及注意事项
MySQL的数据类型 注意 选择合适的数据类型,能节省储存空间,提升计算性能.(1)在符合应用要求(取值范围.精度)的前提下,尽量使用“短”数据类型(2)数据类型越简单越好.(3)在MySQL中, ...
- swiper的自适应高度问题
#swiper的自适应高度问题 众所周知,swiper组件的元素swiper-item是设置了绝对定位的,所以里面的内容是无法撑开swiper的,并且给swiper盒子设置overflow:vis ...