美文网首页
2020 prepare4 leetcode相关

2020 prepare4 leetcode相关

作者: 是黄小胖呀 | 来源:发表于2020-06-23 12:21 被阅读0次

写在前面:

为了高效地刷leetcode,在网上搜了应该怎么去刷,有两点感悟:

首先应该弄懂基本的数据结构和算法,所以刷leetcode应该是一个知识转化为实践的过程,基本的算法理念应该先有;

第一遍可以按tag刷题,刷完easy再刷medium可以先不刷hard,优先刷热度高的题;

1、常见的数据结构和算法

(1)数据结构

线性表、数组、链表、哈希、栈、队列、堆。。。

(2)算法

查找、排序、动态规划。。。

2、按tag优先刷热度高的题

当你没有思路的时候,可以看看GitHub、bibilili上的解题思路。

剩下的还有心态的问题哦,刷leetcode应该是程序员的基本修养呀,还有不能急于求成,要根据自己的时间制定计划,不要想一口气吃个大胖子,也不要让自己拖延。

两个月的时间,刷top100的话,每天也要至少坚持两道,3-5*60=180-300。

然后,凡事一但开始就是成功的一半呀~

第一块数据结构:两个重要点,哈希散列 和  树

参考资料:HashMap, HashTable,HashSet,TreeMap 的时间复杂度 注意数组链表 增删改查的时间复杂度都不相同(阿里)

https://www.cnblogs.com/aspirant/p/8902285.html

待补充~~~

20200711 周六:

突然发现自己对于数据结构了解得太浅和不扎实,想想在工作中由于不熟悉这些带来的低效也没有去反醒,今天才发现,于是想应该好好补一补数据结构然后算法,找来找去资料,后来发现还是教材合适,计算机学科的大学教材,果然出来混都是要还的,哈哈哈

今天看的内容:

1、数据和算法的整体概念了解

(1)数据

逻辑结构:数据元素之间的逻辑关系,可以看作是从具体问题抽象出的数学模型,包括集合结构、线性结构、树状结构、网状结构

存储结构:数据结构在计算机内部的表示或实现,逻辑关系的物理表达,包括顺序存储结构、链式存储结构、索引存储结构、散列存储结构

运算实现:包括增删改查排序

(2)算法

有穷的规则集合,其规则确定了一个解决某一类特定类型问题的运算序列。

时间、空间复杂度

2、线性结构之线性表

(1)栈 后进先出,数制转换 迷宫问题

(2)队列 先进先出 杨辉三角

(3)字符串   串中的数据元素都是单个字符,串的基本操作通常以串的整体为对象 串定位(模式匹配)

(4)数组 顺序存储结构,特殊矩阵压缩

20200712 周天:

1、树

二叉树、满二叉树、完全二叉树、二叉线索树

遍历:先、中、后

恢复:先+中,中+后

2、图

图的定义:顶点、边、度

图的存储:数组、邻接表

图的算法:最小生成树

图的应用:最短路径  Dijkstra算法

3、查找表

顺序查找

二分查找

分块查找

哈希表

4、排序

(1)插入排序

直接插入排序、折半查找插入排序、希尔排序

(2)选择排序

直接选择排序、堆排序

(3)交换排序

冒泡排序、快速排序

(4)其他排序

归并排序、基数排序

排序算法评价:

新增、删除、查询的时间复杂度

在了解了概念之后,开始刷题吧~开始刷题吧~~开始刷题吧~~~

今天也要加油鸭~

相关文章

网友评论

      本文标题:2020 prepare4 leetcode相关

      本文链接:https://www.haomeiwen.com/subject/qracfktx.html