随笔分类 -  剑指offer

摘要:思路 $假设x_1x_2....x_{i-2}的翻译方式为f(i-2)种$ \(假设x_1x_2....x_{i-2}x_{i-1}的翻译方式为f(i-1)种\) \(可以得出x_1x_2....x_{i-2}x_{i-1}x_i的翻译方式\) 1.\(x_{i-1}和xi可以组合翻译那就可以选择组 阅读全文
posted @ 2020-07-15 21:20 浅滩浅 阅读(185) 评论(0) 推荐(0)
摘要:这道题目我之前做过就不多解释了:https://www.cnblogs.com/cstdio1/p/13072712.html /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNo 阅读全文
posted @ 2020-07-15 19:22 浅滩浅 阅读(110) 评论(0) 推荐(0)
摘要:class Solution { public int[] singleNumbers(int[] nums) { Set<Integer> set = new HashSet<>(); int n = nums.length; for(int i=0;i<n;i++){ if(set.contai 阅读全文
posted @ 2020-07-15 19:12 浅滩浅 阅读(120) 评论(0) 推荐(0)
摘要:思路:排序+分情况 class Solution { public int singleNumber(int[] nums) { Arrays.sort(nums); int len=nums.length; for(int i=1;i<len-1;i++){ if(nums[i]!=nums[i- 阅读全文
posted @ 2020-07-15 18:51 浅滩浅 阅读(115) 评论(0) 推荐(0)
摘要:解法:分情况:1、缺开头。 2、缺的元素在中间部位。 3、缺的元素在最后一个位置。 class Solution { public int missingNumber(int[] nums) { int len=nums.length; for(int i=1;i<len;i++){ if(nums 阅读全文
posted @ 2020-07-15 18:21 浅滩浅 阅读(231) 评论(0) 推荐(0)
摘要:经典dp问题 class Solution { public int maxValue(int[][] grid) { int m=grid.length,n=grid[0].length; for(int i=0;i<m;i++){ for(int j=0;j<n;j++){ if(i==0&&j 阅读全文
posted @ 2020-07-15 13:44 浅滩浅 阅读(106) 评论(0) 推荐(0)
摘要:##我的题解 /* // Definition for a Node. class Node { int val; Node next; Node random; public Node(int val) { this.val = val; this.next = null; this.random 阅读全文
posted @ 2020-07-14 20:03 浅滩浅 阅读(105) 评论(0) 推荐(0)
摘要:class Solution { public int removeDuplicates(int[] nums) { int cnt=0; int len=nums.length; for(int i=1;i<len;i++){ if(nums[i]==nums[i-1]){ for(int j=i 阅读全文
posted @ 2020-07-14 11:04 浅滩浅 阅读(116) 评论(0) 推荐(0)
摘要:解题:这个好像是某年考研题,大概思路就是先遍历链表用一个计数器++,当计数值=k时,再用一个指针遍历链表,两个遍历相差k位,当第一个链表遍历完了,第二个链表遍历到倒数第k个元素。 举例:一个人先跑距离为k,另一个人开始起跑,当第一个人到终点时第二个人距离终点距离为k 代码 /** * Definit 阅读全文
posted @ 2020-07-13 21:45 浅滩浅 阅读(114) 评论(0) 推荐(0)
摘要:代码 由于这个链表的头结点也是数据部分,为了保持删除操作的一致性在头结点前面加上一个扩展头节点指向数据头节点。 /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; 阅读全文
posted @ 2020-07-13 21:24 浅滩浅 阅读(174) 评论(0) 推荐(0)
摘要:代码: class Solution { public double myPow(double x, int n) { int len = Math.abs(n); if(len==0) return 1; if(len==1){ if(n>0) return x; return 1/x; } if 阅读全文
posted @ 2020-07-08 13:11 浅滩浅 阅读(177) 评论(0) 推荐(0)
摘要:题目描述 每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为牛客的资深元老,自然也准备了一些小游戏。其中,有个游戏是这样的:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0的小朋友开始报数。每次喊到m 1的那个小朋友要出列唱首歌,然后可以在礼品箱中任 阅读全文
posted @ 2020-01-23 14:20 浅滩浅 阅读(92) 评论(0) 推荐(0)
摘要:题目描述 如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流,使用GetMedian()方法获取当前读取数据的中位数。 阅读全文
posted @ 2020-01-19 13:06 浅滩浅 阅读(99) 评论(0) 推荐(0)
摘要:$\color{ 00FF00}{题目描述}$ 输入两个链表,找出它们的第一个公共结点。 阅读全文
posted @ 2020-01-19 12:21 浅滩浅 阅读(99) 评论(0) 推荐(0)
摘要:$\color{ FF7D00}{题目描述}$ 从上往下打印出二叉树的每个节点,同层节点从左至右打印。 $\color{ FF7D00}{解题:借用队列存一个节点,遍历它的值以及左右孩子的值之后,将左右孩子依次入队列,再循环如此的操作直至队列为空。}$ 阅读全文
posted @ 2020-01-19 12:04 浅滩浅 阅读(107) 评论(0) 推荐(0)
摘要:正则表达式 利用BigDecimal的异常 判断字符是否是数字 判断字符是否是字母 剑指offer题目:https://www.nowcoder.com/practice/6f8c901d091949a5837e24bb82a731f2?tpId=13&tqId=11206&tPage=3&rp=3 阅读全文
posted @ 2020-01-01 14:31 浅滩浅 阅读(1455) 评论(0) 推荐(0)
摘要:栈的压入、弹出序列 相似的企业真题 题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序 阅读全文
posted @ 2019-12-31 16:12 浅滩浅 阅读(136) 评论(0) 推荐(0)
摘要:##\(\color{blue}{**题目描述**}\) 给你一根长度为n的绳子,请把绳子剪成整数长的m段(m、n都是整数,n>1并且m>1),每段绳子的长度记为k[0],k[1],...,k[m]。请问k[0]xk[1]x...xk[m]可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成 阅读全文
posted @ 2019-12-24 21:41 浅滩浅 阅读(189) 评论(0) 推荐(0)
摘要:ListNode结构: 解法1 解法2 解法1和解法2的差别: 解法3 阅读全文
posted @ 2019-12-15 22:00 浅滩浅 阅读(120) 评论(0) 推荐(0)
摘要:题目描述 给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1]。不能使用除法。 解题:用临时变量tmp保存a[i]的值,之后将a[i]=1;b[i]计算出来之后再将a 阅读全文
posted @ 2019-07-26 10:48 浅滩浅 阅读(106) 评论(0) 推荐(0)