LeetCode 刷题
文章平均质量分 74
You're crazy!
这个作者很懒,什么都没留下…
展开
-
剑指offer刷题总结(Leetcode未完结,持续更新)
剑指offer刷题总结一、分类:单调队列: 59 - II. 队列的最大值 59 - I. 滑动窗口的最大值栈、队列 09. 用两个栈实现队列 22. 链表中倒数第k个节点40. 最小的k个数30. 包含min函数的栈31. 栈的压入、弹出序列41. 数据流中的中位数(优先级队列)斐波那契数列:(简单) 10- I. 斐波那契数列 10- II. 青蛙跳台阶问题重复数字问题 03. 数组中重复的数字,很多对重复的数,找到一对即可二叉树DFS的几种经典写法:1、判断当前原创 2021-07-24 10:46:44 · 260 阅读 · 0 评论 -
算法题刷题步骤
算法题刷题步骤分三大步骤:一是分析题目属于哪一类题目,大概用到什么数据结构算法,是数组、链表、图、树?还是用递归动态规划这些方法。常见的算法题目一般只涉及到这几个方面。二是验证分析阶段的思路。注意常见错误:变量名写错,边界条件考虑不周。如果调试阶段超过写代码的30%时间,说明思考过程,方案设计很有问题。先反思分析设计方案除了什么错误,思考的不够系统吗?不要一边写,一边改方案,这样效率太低,而且你会逐渐适应低效率的节奏,这个负面影响太大。三是作总结,总结很重要。如果没做出来,反思什么阶段犯了错误。如果转载 2021-05-28 18:11:54 · 1459 阅读 · 0 评论 -
2021-05-28
什么是散列表?散列表散列表(Hash table,也叫哈希表),是根据键(Key)而直接访问在内存存储位置的数据结构。也就是说,它通过计算一个关于键值的函数,将所需查询的数据映射到表中一个位置来访问记录,这加快了查找速度。这个映射函数称做散列函数,存放记录的数组称做散列表。散列函数散列函数,顾名思义,它是一个函数。如果把它定义成 hash(key) ,其中 key 表示元素的键值,则 hash(key) 的值表示经过散列函数计算得到的散列值。散列函数的特点:1.确定性如果两个散列值是不相同的(转载 2021-05-28 09:14:48 · 1031 阅读 · 0 评论 -
个人LeetCode刷题记录(带题目链接及解答)持续更新
Leetcode 刷题注意点;写代码经常出现的错误总结归纳:1、for(;;)中的;经常写成,2、true 的拼写错误3、while 的离开循环条件忘写,陷入死循环4、return忘写5、不能使用关键字命名变量一些程序的写法:1、vector排序的写法: Arrays.sort(nums); sort(nums.begin(),nums.end());算法思想1、双指针(7题)【完成】167.两数之和 II - 输入有序数组 简单第一代代码(自己想到的)//存在一原创 2021-05-27 19:58:08 · 2010 阅读 · 0 评论 -
十种排序算法的归纳
学习每种算法前都回忆一下这个动态图注:【2 for】冒泡、选择、插入都是2个for,一个用于控制将排序范围不断缩小,不去影响已经排好序的序列【3 for, temp】希尔排序是3个for,和插入排序相比多了一个控制d的大小的for【2 for 、2 while、3 ptr】归并排序是2个for,一个控制所需排序数组中的元素全部拷贝到辅助数组中,另一个for对数组进行归并操作,还有两个while,将两个待归并子序列中多余长度的部分之间复制到原数组中【2 while、2 ptr】快速排序,写起来其实原创 2021-05-15 18:41:32 · 591 阅读 · 0 评论