摘要:
前言: 堆性质定义 大根堆:arr(i)>arr(2*i+1) && arr(i)>arr(2*i+2) 小根堆:arr(i)<arr(2*i+1) && arr(i)<arr(2*i+2) 堆排序基本思想: 1.首先将待排序的数组构造成一个大根堆,此时,整个数组的最大值就是堆结构的顶端 2.将顶端 阅读全文
摘要:
原文:https://mp.weixin.qq.com/s/kS0K5P4FdF3v-fiIjGIvvQ 解决循环依赖整个过程 滴滴 阅读全文
摘要:
题目: 思路: 1 hashset 加入集合判断新的数是否在set中,防止死循环 2 递归处理,出口时 n == 1 返回true , 集合包含新的数据(拆分后的平方相加) 返回false (一)代码 class Solution { public boolean isHappy(int n) { 阅读全文
摘要:
题目: 思路: 1 快速排序思想,倒序排列 + 数学公式 int x = 12; int y = 345 x 拼接 y = 12345 = 12 * 1000 + 345 = x * 1000 + y; y 拼接 x = 34512 = 345 * 100 + 12 = y * 100 + x; 上 阅读全文
摘要:
原因分析: 下载安装的依赖包太大,导致git请求超时了,可以通过修改git http.postBuffer的大小来控制超时时间 解决方案: 在git cmd窗口中执行命令:git config http.postBuffer 524288000 缘分 阅读全文
摘要:
题目: 给定一个非空字符串 s 和一个包含非空单词的列表 wordDict, 判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词。 思路: 1 将字符串加入hashset 中 2 动态规划,新建dp数组 (一)代码 动态规划, 一天不学就废 阅读全文
摘要:
题目: 思路: 分治法 遍历字符串,将字符出现次数少于K次的,存入数组(数组下标为( 字符 - 'a' ),内容为出现次数) 作为分割条件,对字符串进行多条件切割 递归字串,求max (一)代码 class Solution { public int longestSubstring(String 阅读全文
摘要:
题目: 给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。 思路: 1 复制一个数组 移动后的位置为(当前位置+k)% 数组长度 (一)思路一 代码 睡个好觉 阅读全文
摘要:
题目: 思路: 1 遍历链表将Node中的val 放入双端队列 2 用双端队列的api (注意用K % node数量) 是移动的次数,减少重复移动 getLast //获取最后一个值 pollLast //移除最后一个值 addFirst //将最后一个值加到头部 3 新建链表,将队列中的值链起来 阅读全文
摘要:
题目 给你一个字符串 s 和一个字符串数组 dictionary 作为字典,找出并返回字典中最长的字符串,该字符串可以通过删除 s 中的某些字符得到。 如果答案不止一个,返回长度最长且字典序最小的字符串。如果答案不存在,则返回空字符串。 思路: 1 排序 运用Collections.sort 对Li 阅读全文