剑指offer31天
文章平均质量分 50
北聖
总不能因为难而不去做了吧
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
剑指offer——第三十一天(数学“困难“ )完结
数学(第三十一天——困难)第一题:剑指 Offer 14- II. 剪绳子 II问题描述思路代码时间空间复杂度第二题:剑指 Offer 43. 1~n 整数中 1 出现的次数问题描述思路代码时间空间复杂度第三题:剑指 Offer 44. 数字序列中某一位的数字问题描述思路代码时间空间复杂度第一题:剑指 Offer 14- II. 剪绳子 II问题描述思路之前有个一样的剪绳子的问题,思路都差不多。说一个关键点:这个问题说了有大数的情况,为了避免大数的越出的情况,因此用模的方法来避免大数越界的情况;具原创 2021-11-21 10:47:22 · 732 阅读 · 4 评论 -
剑指offer——第三十天( 分治算法“困难”)
第三十天—— 分治算法“困难”# 第一题:剑指 Offer 17. 打印从1到最大的n位数问题描述思路(小数)代码时间空间复杂度思路(大数)代码时间空间复杂度第二题:剑指 Offer 51. 数组中的逆序对问题描述思路代码时间空间复杂度# 第一题:剑指 Offer 17. 打印从1到最大的n位数问题描述思路(小数)只考虑小数的话比较简单,思路直接用for循环然后得到答案。代码class Solution { public int[] printNumbers(int n) {原创 2021-11-20 23:28:45 · 610 阅读 · 2 评论 -
剑指offer——第二十九天(动态规划“困难”)
第二十九天——动态规划第一题:剑指 Offer 19. 正则表达式匹配问题描述思路代码时间空间复杂度代码(皮一下)时间空间复杂度第二题:剑指 Offer 49. 丑数问题描述思路代码时间空间复杂度第三题:剑指 Offer 60. n个骰子的点数问题描述思路代码时间空间复杂度第一题:剑指 Offer 19. 正则表达式匹配问题描述思路代码public class Solution { // 最直观版 public boolean isMatch(String s, String原创 2021-11-19 23:32:37 · 664 阅读 · 6 评论 -
剑指offer——第二十八天(搜索与回溯算法“困难”)
第二十八天——搜索与回溯算法第一题:剑指 Offer 37. 序列化二叉树问题描述思路代码(手动狗头)时间空间复杂度代码时间空间复杂度第二题:剑指 Offer 38. 字符串的排列问题描述思路代码时间空间复杂度第一题:剑指 Offer 37. 序列化二叉树问题描述思路代码(手动狗头)别问为什么,直接保命就OK/** * Definition for a binary tree node. * public class TreeNode { * int val; * T原创 2021-11-18 17:33:34 · 843 阅读 · 4 评论 -
剑指offer——第二十七天(栈与队列“困难”)
第二十七天——栈与队列第一题:剑指 Offer 59 - I. 滑动窗口的最大值问题描述思路代码时间空间复杂度思路二代码时间空间复杂度第二题:剑指 Offer 59 - II. 队列的最大值问题描述思路代码时间空间复杂度第一题:剑指 Offer 59 - I. 滑动窗口的最大值问题描述思路老规矩,还是看大佬思路解决不会的!!!看过解析,看过代码,然后自己跟大佬思路一样的流程,失误了很多次,还需要多加练习,规范自己。算法流程:作者:jyd链接:https://leetcode-cn.co原创 2021-11-17 16:45:26 · 379 阅读 · 2 评论 -
剑指offer——第二十六天(字符串)
第二十六天——字符串第一题:剑指 Offer 20. 表示数值的字符串问题描述思路代码时间空间复杂度第二题:问题描述思路代码第一题:剑指 Offer 20. 表示数值的字符串问题描述思路归纳各种正确的情况‘.’ 出现正确情况:只出现一次,且在e的前面‘e’ 出现正确情况:只出现一次,且出现前有数字‘+’‘-’ 出现正确情况:只能在开头和e后一位代码class Solution { public boolean isNumber(String s) { i原创 2021-11-16 20:38:31 · 527 阅读 · 2 评论 -
剑指offer——第二十五天(模拟)
第二十五天——模拟第一题:剑指 Offer 29. 顺时针打印矩阵问题描述思路代码时间空间复杂度第一题:剑指 Offer 29. 顺时针打印矩阵问题描述思路按照从左到右,从上到下,从右到左,从下到上进行输入数组;代码public class Solution { public int[] spiralOrder(int[][] matrix) { int row = matrix.length; if (row == 0) { r原创 2021-11-15 17:41:14 · 517 阅读 · 2 评论 -
剑指offer——第二十四天(数学)
第二十四天——数学第一题:剑指 Offer 14- I. 剪绳子问题描述思路代码时间空间复杂度第二题:剑指 Offer 57 - II. 和为s的连续正数序列问题描述思路一:滑动窗口(个人觉得比官方给的数学的方法好理解)代码时间空间复杂度思路二:数学思想(博主理解有点难)代码时间空间复杂度第三题:剑指 Offer 62. 圆圈中最后剩下的数字问题描述思路代码时间空间复杂度第一题:剑指 Offer 14- I. 剪绳子问题描述思路剪绳子用数学公式可以得到最大长度剪成3,其次是2;当绳子长度小于3时原创 2021-11-14 11:21:03 · 1575 阅读 · 2 评论 -
剑指offer——第二十三天(数学)
第二十三天——数学第一题:剑指 Offer 39. 数组中出现次数超过一半的数字问题描述思路思路一:投票法(借鉴大佬思路)代码空间复杂度和时间复杂度思路二代码空间复杂度和时间复杂度思路三代码空间复杂度和时间复杂度第二题:剑指 Offer 66. 构建乘积数组问题描述思路代码第一题:剑指 Offer 39. 数组中出现次数超过一半的数字问题描述思路思路一:投票法(借鉴大佬思路)作者:jyd链接:https://leetcode-cn.com/problems/shu-zu-zhong-ch原创 2021-11-13 23:45:23 · 1026 阅读 · 0 评论 -
剑指offer——第二十二天(位运算)
第二十二天——位运算第一题:剑指 Offer 56 - I. 数组中数字出现的次数问题描述思路代码第二题:剑指 Offer 56 - II. 数组中数字出现的次数 II问题描述思路代码第一题:剑指 Offer 56 - I. 数组中数字出现的次数问题描述思路代码class Solution { public int[] singleNumbers(int[] nums) { int x = 0, y = 0, n = 0, m = 1; for(int n原创 2021-11-12 23:47:33 · 155 阅读 · 0 评论 -
剑指 Offer——第二十天(重建二叉树)
第二十天——重建二叉树第一题:剑指 Offer 07. 重建二叉树问题描述思路代码第二题:剑指 Offer 16. 数值的整数次方问题描述思路代码第三题:剑指 Offer 33. 二叉搜索树的后序遍历序列问题描述思路代码第一题:剑指 Offer 07. 重建二叉树问题描述思路代码/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; *原创 2021-11-10 23:51:52 · 518 阅读 · 0 评论 -
剑指offer——第十九天(搜索与回溯算法)
剑指offer——第十七天第一题:剑指 Offer 64. 求1+2+…+n问题描述思路代码第二题:剑指 Offer 68 - I. 二叉搜索树的最近公共祖先问题描述思路代码第三题:剑指 Offer 68 - II. 二叉树的最近公共祖先问题描述思路代码第一题:剑指 Offer 64. 求1+2+…+n问题描述思路代码class Solution { public int sumNums(int n) { int sum = n; boolean flag原创 2021-11-09 23:41:31 · 507 阅读 · 0 评论 -
剑指offer——第十八天(搜索与回溯算法)
剑指offer——第十七天第一题:剑指 Offer 55 - I. 二叉树的深度问题描述思路代码第二题:剑指 Offer 55 - II. 平衡二叉树问题描述思路代码第一题:剑指 Offer 55 - I. 二叉树的深度问题描述思路递归左右子数求深度;返回最大值;代码/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * T原创 2021-11-08 23:02:26 · 257 阅读 · 0 评论 -
剑指offer——第十七天(排序)
剑指offer——第十七天第一题:剑指 Offer 40. 最小的k个数问题描述思路代码第二题:剑指 Offer 41. 数据流中的中位数问题描述思路代码第一题:剑指 Offer 40. 最小的k个数问题描述思路快排序代码class Solution { public int[] getLeastNumbers(int[] arr, int k) { if (k == 0 || arr.length == 0) { return new int[原创 2021-11-07 23:17:58 · 164 阅读 · 0 评论 -
剑指offer——第十六天( 排序)
剑指offer——第十六天第一题:问题描述思路代码第二题:剑指 Offer 61. 扑克牌中的顺子问题描述思路代码第一题:问题描述思路利用堆排序可代码class Solution { public String minNumber(int[] nums) { Queue <String> queue = new PriorityQueue<>(new Comparator<String>(){ publ原创 2021-11-06 22:15:39 · 583 阅读 · 0 评论 -
剑指offer——第十五天(搜索与回溯算法)
剑指offer——第十五天第一题:剑指 Offer 34. 二叉树中和为某一值的路径问题描述思路代码第二题:剑指 Offer 36. 二叉搜索树与双向链表问题描述思路代码第三题:剑指 Offer 54. 二叉搜索树的第k大节点问题描述思路代码第一题:剑指 Offer 34. 二叉树中和为某一值的路径问题描述思路借鉴一个大佬思路代码/** * Definition for a binary tree node. * public class TreeNode { * int原创 2021-11-05 21:54:36 · 167 阅读 · 0 评论 -
剑指offer——第十四天(搜索与回溯算法)
剑指offer——第十四天第一题:剑指 Offer 12. 矩阵中的路径思路代码第二题:剑指 Offer 13. 机器人的运动范围问题描述思路代码第一题:剑指 Offer 12. 矩阵中的路径思路代码class Solution { public boolean exist(char[][] board, String word) { if(board == null || board.length == 0) return false;原创 2021-11-04 23:07:15 · 138 阅读 · 0 评论 -
剑指offer——第十三天(双指针)
剑指offer——第十三天第一题:剑指 Offer 21. 调整数组顺序使奇数位于偶数前面问题描述:思路代码第二题:剑指 Offer 57. 和为s的两个数字问题描述:思路代码第三题:剑指 Offer 58 - I. 翻转单词顺序问题描述思路代码第一题:剑指 Offer 21. 调整数组顺序使奇数位于偶数前面问题描述:思路代码class Solution { public int[] exchange(int[] nums) { int [] array = new in原创 2021-11-03 21:30:00 · 147 阅读 · 0 评论 -
剑指offer——第十二天(双指针)
剑指offer——第十二天第一题:剑指 Offer 25. 合并两个排序的链表问题描述思路代码第一题:剑指 Offer 52. 两个链表的第一个公共节点问题描述思路代码第一题:剑指 Offer 25. 合并两个排序的链表问题描述思路代码/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) {原创 2021-11-03 16:56:17 · 146 阅读 · 0 评论 -
剑指offer——第十一天(双指针)
第十一天——双指针第一题:剑指 Offer 18. 删除链表的节点题目描述:思路代码第二题:剑指 Offer 22. 链表中倒数第k个节点题目描述:思路代码第一题:剑指 Offer 18. 删除链表的节点题目描述:思路顺着结点往下找,遇到当前数字跳过当前结点,然后直接输出。代码/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; *原创 2021-11-01 23:43:16 · 156 阅读 · 0 评论 -
剑指offer——第十天(动态规划)
剑指offer——第十天第一题:剑指 Offer 46. 把数字翻译成字符串问题描述思路代码第二题:剑指 Offer 48. 最长不含重复字符的子字符串问题描述思路代码第一题:剑指 Offer 46. 把数字翻译成字符串问题描述思路代码class Solution { public int translateNum(int num) { String str = String.valueOf(num); int dp[] = new int[str.len原创 2021-10-31 22:37:30 · 131 阅读 · 0 评论 -
剑指offer——第九天(动态规划)
剑指offer——第九天题目一:剑指 Offer 42. 连续子数组的最大和题目描述思路代码题目二 :剑指 Offer 47. 礼物的最大价值题目描述思路代码题目一:剑指 Offer 42. 连续子数组的最大和题目描述思路动态规划然后求最大值。代码class Solution { public int maxSubArray(int[] nums) { int [] dp = new int [nums.length]; dp[0] = nums[0];原创 2021-10-30 23:11:49 · 164 阅读 · 0 评论 -
剑指 Offer——第八天(动态规划)
剑指offer——第八天题目一:剑指 Offer 10- I. 斐波那契数列问题描述思路代码题目二:剑原创 2021-10-29 20:30:57 · 154 阅读 · 0 评论 -
剑指offer——第七天( 搜索与回溯算法)
剑指offer——第七天第一题:剑指 Offer 26. 树的子结构文章描述思路代码第二题:剑指 Offer 27. 二叉树的镜像文章描述思路代码第三题:剑指 Offer 28. 对称的二叉树文章描述思路代码第一题:剑指 Offer 26. 树的子结构文章描述思路代码第二题:剑指 Offer 27. 二叉树的镜像文章描述思路代码第三题:剑指 Offer 28. 对称的二叉树文章描述思路代码...原创 2021-10-28 23:37:08 · 168 阅读 · 0 评论 -
剑指offer——第六天(搜索与回溯算法)
剑指offer——第六天第一题:剑指 Offer 32 - I. 从上到下打印二叉树问题描述思路代码疑难点Queue 中 add() 和 offer() 区别Queue 中 remove() 和 poll() 区别第二题:剑指 Offer 32 - II. 从上到下打印二叉树 II问题描述思路代码疑难点第三题:剑指 Offer 32 - III. 从上到下打印二叉树 III问题描述思路代码第二种代码第一题:剑指 Offer 32 - I. 从上到下打印二叉树问题描述思路利用队列,直接层次遍历;输出原创 2021-10-27 19:39:53 · 167 阅读 · 0 评论 -
剑指offer——第五天(查找算法)
剑指offer——第五天第一题——剑指 Offer 04. 二维数组中的查找问题描述思路代码第二题——剑指 Offer 11. 旋转数组的最小数字问题描述思路代码代码二第三题问题描述思路代码疑难点代码二第一题——剑指 Offer 04. 二维数组中的查找问题描述思路从右上角来寻找,如果大于目标值则向下移动,小于则向左移动。代码class Solution { public boolean findNumberIn2DArray(int[][] matrix, int target) {原创 2021-10-26 15:10:39 · 203 阅读 · 0 评论 -
剑指offer——第四天(查找算法)
剑指offer——第四天第一题——剑指 Offer 03. 数组中重复的数字题目描述思路代码思路二代码(二)剑指 Offer 53 - I. 在排序数组中查找数字 I问题描述思路代码思路二代码二剑指 Offer 53 - II. 0~n-1中缺失的数字问题描述思路代码第一题——剑指 Offer 03. 数组中重复的数字题目描述思路原地交换。借鉴大佬思路帮助理解~!!!作者:cheungq-6链接:https://leetcode-cn.com/problems/shu-zu-zhong-z原创 2021-10-25 17:35:23 · 209 阅读 · 0 评论 -
剑指offer——第三天(字符串)
剑指offer——第三天第一题——剑指 Offer 05. 替换空格题目描述思路代码疑难点CharactertoString()toCharArray()String、StringBuffer和StringBuilder的区别另外一种思路思路代码第二题——剑指 Offer 58 - II. 左旋转字符串题目描述思路代码第一题——剑指 Offer 05. 替换空格题目描述思路新new一个字符串为空,然后遍历字符串s如果遇到空格便替换成%20,未遇到就直接加到字符串的后面,依次遍历最后一个。代码c原创 2021-10-24 12:50:18 · 2542 阅读 · 0 评论 -
剑指offer——第二天(链表)
剑指offer——第二天第一题:剑指 Offer 06. 从尾到头打印链表代码第二题:剑指 Offer 24. 反转链表思路(迭代)代码第一题:剑指 Offer 06. 从尾到头打印链表代码/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class原创 2021-10-23 23:16:17 · 249 阅读 · 0 评论 -
剑指 Offer——第一天(栈与队列))
剑指offer——第一天第一题第一题原创 2021-10-22 23:45:56 · 403 阅读 · 2 评论
分享