摘要: 今天在力扣每日一题中又遇到了需要取出数组前n个元素的题目,第一时间想到使用Arrays的sort排序,应该可以自定义比较器,或者使用大顶堆(优先级队列),但是一下没有写出来,还是去查了下资料,因此在这做个笔记以备无患。 Arrays的sort自定义比较器:Arrays.sort(数组,(a,b)-> 阅读全文
posted @ 2020-11-09 15:47 浮尘2333 阅读(880) 评论(0) 推荐(1) 编辑
摘要: 题目链接 思路有两个: 遍历一遍链表得到整个链表长度L,再遍历一次到L-n-1的地方进行删除节点 用快慢指针,相隔距离n 实现过程: 刚开始用的是在原链表内进行操作,加上一些特殊情况,例如只有一个节点和删除的是第一个位置时。 /** * Definition for singly-linked li 阅读全文
posted @ 2020-10-18 16:31 浮尘2333 阅读(74) 评论(0) 推荐(0) 编辑
摘要: 今天在写二分查找,计算中间值的时候是这样写的: long mid = left + (right - left) >> 1; 然后提交一直都是超时,脑改了很多地方都不行,只能debug,发现循环死在left=16,right=30时,由于循环一直是进入left=mid+1中,然而mid根本没有变,所 阅读全文
posted @ 2020-08-29 17:36 浮尘2333 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 题目链接 解法一:按列比较,选第一个字符为比较对象,若长度达到所有字符串中最短的字符长度,或者有不符合的出现,返回结果。时间击败了7.28%的人。 class Solution { public String longestCommonPrefix(String[] strs) { String s 阅读全文
posted @ 2020-08-20 17:29 浮尘2333 阅读(77) 评论(0) 推荐(0) 编辑
摘要: #无向图的构建与遍历 单词接龙题目链接 思路一:第一眼看到这个题,想到的解法是递归回溯,和最小基因变化很类似,因此编写代码如下: import java.util.List; class Solution { //典型的回溯问题,每次遍历字典找出未对比过的,然后标记,进入下一层,然后再回来取消标记 阅读全文
posted @ 2020-07-12 23:37 浮尘2333 阅读(166) 评论(0) 推荐(0) 编辑
摘要: #树的解题方法总结 以前在算法与数据结构的课上学习的时候,听的迷迷糊糊的,理论学的多,实践操作的少,这几天刷了下leetcode里树相关的题目,有一些体会,遂记录。 关于树的题目一般是遍历题目,而树的遍历又分为两种:深度优先遍历(DFS,Deep Firstly Search)和宽度优先遍历(BFS 阅读全文
posted @ 2020-07-04 21:06 浮尘2333 阅读(136) 评论(0) 推荐(0) 编辑
摘要: #题目链接 这道题目看了官方的解答,实现一遍发现速度很慢,只击败了26%的人,偶然间发现提交后可以看比你快的代码(具体路径:提交记录->通过->放大执行时间靠前的区域->点击最前的一块直方图即可看到示例代码)。 class Solution { public List<List<String>> g 阅读全文
posted @ 2020-07-02 00:00 浮尘2333 阅读(101) 评论(0) 推荐(0) 编辑
摘要: #边界处理 这题也是以前看过没理解,倒过来看理解的。 首先越界可能只有一种,最小数除-1 考虑简单情况,除数为1和-1以及被除数为0的情况,可以直接返回结果 接下来考虑一般情况:先判断商的正负值,然后把两个数都转为负数,因为如果转为正数的话,INT_MIN会溢出。 接下来就是不断翻倍,直到不满足条件 阅读全文
posted @ 2020-07-01 11:29 浮尘2333 阅读(115) 评论(0) 推荐(0) 编辑
摘要: #题目--28、实现strStr 这道题以前做题的时候卡住了,导致后面也没兴趣做下去其他的题目,看题解也没看懂,KMP算法。今天重新看了一遍高赞题解,有了新认识,遂记录下来,后面可以复习。 题目分析:实现一个indexof()函数功能 输入为两个,一个为待匹配的字符串target,一个为匹配模板pa 阅读全文
posted @ 2020-06-30 00:29 浮尘2333 阅读(96) 评论(0) 推荐(0) 编辑
摘要: #i和i的运行分析 今天在刷leetcode的三数之和时,写错i与i。一直只能搜索到一个解,遂百度,发现一个有趣的问题。 int a=0; int a=a++; cout<<a; 结果不是1,而是0!!!。看到一篇博客(链接忘了)阐明的原理,大概如下: ##i++ type tmp=i; i=i+1 阅读全文
posted @ 2020-06-25 23:12 浮尘2333 阅读(125) 评论(0) 推荐(0) 编辑