leetcode
文章平均质量分 65
山那边是海*
这个作者很懒,什么都没留下…
展开
-
leetcode---技巧
ava程序获取控制台输入的方法:import java.util.Scanner;//先导包Scanner sc = new Scanner(System.in);String str = sc.next();//获取的输入为String类型int a1 = sc.nextInt();//获取的输入为int类型double a2= sc.nextDouble();//获取的输入为double类型.........原创 2022-05-27 11:14:15 · 364 阅读 · 0 评论 -
Java控制台输入输出问题
1、此情况可以设置一个终止符,调用hasNext()的重载方法hasNext(String patten):如果下一个标记与从指定字符串构造的模式匹配,则返回 true。而对于那些输入有效字符前的空格键、Tab键、Enter键等结束符,next()不会读取。在读取到有效字符之后,next()会将空格键、Tab键、Enter键等当做结束符。示例2:按下第一个回车键enter并不会输出,按下第二个回车键输出,原因在于如果只有一行字符串,那么还没走到打印Sout就退出循环了。若有,则返回true;原创 2022-09-09 02:16:46 · 1092 阅读 · 0 评论 -
栈和队列总结
栈和队列原创 2022-09-08 14:28:32 · 122 阅读 · 0 评论 -
数组和双指针专题总结
1、数组理论基础数组是存放在连续内存空间上的相同类型数据的集合。需要两点注意的是正是。原创 2022-09-03 04:07:55 · 144 阅读 · 0 评论 -
KMP算法总结
next数组就是一个前缀表。前缀表有什么作用呢?前缀表是用来回退的,它记录了模式串与主串(文本串)不匹配的时候,模式串应该从哪里开始重新匹配。动画里,我特意把 子串aa标记上了,这是有原因的,大家先注意一下,后面还会说道。可以看出,文本串中第六个字符b 和 模式串的第六个字符f,不匹配了。如果暴力匹配,会发现不匹配,此时就要从头匹配了。但如果使用前缀表,就不会从头匹配,而是从上次已经匹配的内容开始匹配,找到了模式串中第三个字符b继续开始匹配。此时就要问了前缀表是如何记录的呢?原创 2022-08-25 16:12:22 · 159 阅读 · 0 评论 -
字符和字符串专题
1、26个英文的ASCILL码。原创 2022-08-19 01:31:22 · 211 阅读 · 0 评论 -
图和并查集算法总结
邻接表,好处是占用的空间少,但无法快速判断两个节点是否相邻;连接矩阵,好处是快速判断两个节点是否相邻,但占用的空间多,浪费多。实际上面这个很少用,引出了下面两种存储图的方式。其实就是「邻接表」表示的一幅图,构成的,逻辑结构如下。....................................原创 2022-08-05 23:22:02 · 338 阅读 · 0 评论 -
动态规划总结
上面的优化,是从F(20)到F(1)和F(0),算出F(1)和F(0)在反推回去算出F(20)时间复杂度为O(2的n次方)时间复杂度为O(n)原创 2022-07-25 22:04:07 · 98 阅读 · 0 评论 -
贪心算法总结
贪心的本质是选择每一阶段的局部最优,从而达到全局最优。这么说有点抽象,来举一个例子例如,有一堆钞票,你可以拿走十张,如果想达到最大的金额,你要怎么拿?指定每次拿最大的,最终结果就是拿走最大数额的钱。每次拿最大的就是局部最优,最后拿走最大数额的钱就是推出全局最优。再举一个例子如果是有一堆盒子,你有一个背包体积为n,如何把背包尽可能装满,如果还每次选最大的盒子,就不行了。这时候就需要动态规划。动态规划的问题在下一个系列会详细讲解。力扣代码随想录。...原创 2022-07-24 00:08:47 · 143 阅读 · 0 评论 -
回溯算法详解
回溯法也可以叫做回溯搜索法,它是一种搜索的方式,回溯的本质是穷举,穷举所有可能,然后选出我们想要的答案。回溯是递归的副产品,只要有递归就会有回溯。原创 2022-07-23 11:26:02 · 180 阅读 · 0 评论