自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(65)
  • 资源 (3)
  • 收藏
  • 关注

原创 剑指offer

剑指offer03. 数组中重复的数字(1)题目描述(2)思路与解法04. 二维数组中的查找(1)题目描述(2)思路与解法05. 替换空格(1)题目描述(2)思路与解法日期记录(更新题号)2020年10月12日03. 数组中重复的数字04. 二维数组中的查找05. 替换空格03. 数组中重复的数字(1)题目描述找出数组中重复的数字。在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字

2020-10-12 21:23:42 295

原创 重刷LeetCode-递归

重刷LeetCode-递归1137. 第 N 个泰波那契数(1)题目描述(2)思路与解法日期记录(更新题号)2020年8月17日1137. 第 N 个泰波那契数1137. 第 N 个泰波那契数(1)题目描述泰波那契序列 Tn 定义如下:T0 = 0, T1 = 1, T2 = 1, 且在 n >= 0 的条件下 Tn+3 = Tn + Tn+1 + Tn+2给你整数 n,请返回第 n 个泰波那契数 Tn 的值。来源:力扣(LeetCode)链接:https:

2020-08-17 23:34:01 180

原创 重刷LeetCode-脑筋急转弯

LeetCode-脑筋急转弯292. Nim 游戏(1)题目描述(2)思路与解法1227. 飞机座位分配概率(1)题目描述(2)思路与解法日期记录(更新题号)2020年8月13日292. Nim 游戏 1227. 飞机座位分配概率292. Nim 游戏(1)题目描述你和你的朋友,两个人一起玩 Nim 游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头。 拿掉最后一块石头的人就是获胜者。你作为先手。你们是聪明人,每一步都是最优解。 编写一个函数,来判断你是否可以在

2020-08-13 22:55:21 324

原创 重刷LeetCode-数组

LeetCode-数组1480. 一维数组的动态和(1)题目描述(2)解法与思路1480. 一维数组的动态和(1)题目描述给你一个数组 nums 。数组「动态和」的计算公式为:runningSum[i] = sum(nums[0]…nums[i]) 。请返回 nums 的动态和。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/running-sum-of-1d-array(2)解法与思路很简单。class Solution {

2020-08-11 20:43:44 338

原创 《线性代数应该这样学》学习笔记

《线性代数应该这样学》学习笔记第1章 向量空间1.1复数参考书目:Axler的《Linear Algebra Done Right》参考视频:https://www.bilibili.com/video/BV1PK4y1x7rC第1章 向量空间1.1复数

2020-08-05 19:43:38 1113

原创 重刷LeetCode(简单篇)

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

2020-08-03 20:24:49 239

原创 WebLogic安装过程中Configuration Wizard无法打开的问题

WebLogic安装过程中Configuration Wizard无法打开的问题问题描述:在开始菜单双击Configuration Wizard闪退;通过cmd进入对应目的尝试打开config.cmd,但是提示“此处不应有 E:/java/…”类似的报错。解决方案:删除环境变量中的classpath,重启电脑。...

2019-08-25 16:01:07 2414

原创 丑数(Java实现)

题目描述把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。解题思路(1)最开始考虑的是,将已知的丑数分别乘以2, 3,5,选择出最小的一个加入的ugly队列中。可以使用TreeSet集合,这样既能保证生成的丑数不会重复,而且保证了是从小到大排序的,每次从tr...

2019-03-26 19:47:03 2190

原创 圆圈中最后剩下的数(Java实现)

题目描述每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为牛客的资深元老,自然也准备了一些小游戏。其中,有个游戏是这样的:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0的小朋友开始报数。每次喊到m-1的那个小朋友要出列唱首歌,然后可以在礼品箱中任意的挑选礼物,并且不再回到圈中,从他的下一个小朋友开始,继续0…m-1报数…这样下去…直到剩下最后一...

2019-03-24 22:52:40 415

原创 把二叉树打印成多行(Java实现)

题目描述从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。解题思路层次遍历。注意Java中queue的初始化问题。代码实现import java.util.ArrayList;import java.util.Queue;import java.util.LinkedList;/*public class TreeNode { int val = 0; ...

2019-03-22 22:22:14 990

原创 最小的k个数(Java实现)

题目描述输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。解题思路设置一个大小为k的容器,如果还有空余,就将数组中的数加进去,否则就比较数组中的数和容器中最大的数,选择最小的放进去。注:ArrayList中的indexOf(int k)方法,是返回值为k的下标。代码实现import java.util.ArrayL...

2019-03-17 23:02:27 602

原创 树的子结构(Java实现)

题目描述输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)解题思路首先要找出A树的哪些节点和B树的根节点的值相等,这才有可能使得B称为A的一个子结构。之后再对与B树根节点值相等的子树判断每一个叶子节点的值是否相等。需要写两个函数,一个找出相等的节点,一个判断叶子节点是否相等。都是用递归实现的。代码实现/**public class Tree...

2019-03-17 21:28:58 727

原创 LeetCode——338. Counting Bits

题目描述Given a non negative integer number num. For every numbers i in the range 0 ≤ i ≤ num calculate the number of 1’s in their binary representation and return them as an array.Example 1:Input: 2O...

2019-03-15 15:51:31 115

原创 LeetCode——303. Range Sum Query - Immutable

题目描述Given an integer array nums, find the sum of the elements between indices i and j (i ≤ j), inclusive.Example:Given nums = [-2, 0, 3, -5, 2, -1]sumRange(0, 2) -> 1sumRange(2, 5) -> -1su...

2019-03-15 12:41:00 112

原创 LeetCode——198. House Robber

题目描述You are a professional robber planning to rob houses along a street. Each house has a certain amount of money stashed, the only constraint stopping you from robbing each of them is that adjacent ...

2019-03-15 12:24:59 87

原创 LeetCode——53. Maximum Subarray

题目描述Given an integer array nums, find the contiguous subarray (containing at least one number) which has the largest sum and return its sum.Example:Input: [-2,1,-3,4,-1,2,1,-5,4],Output: 6Explana...

2019-03-15 11:06:02 110

原创 从上到下打印二叉树(Java实现)

题目描述从上往下打印出二叉树的每个节点,同层节点从左至右打印。解题思路层次遍历,用队列保存节点。注意Queue的初始化问题:Queue is abstract; 不能用 new Queue();代码实现import java.util.ArrayList;import java.util.Queue;import java.util.LinkedList;/**public c...

2019-03-14 22:45:18 1364

原创 对称的二叉树(Java实现)

题目描述请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。解题思路最初的想法是考虑一个节点的两个子节点的值是否相等,但是如果树的深度>2,就会得到错误结果了。看书上的思路是这样的:考虑先序遍历,先遍历根节点,再左孩子,最后右孩子。如果是一个对称的二叉树,先遍历右孩子,再遍历左孩子得到的结果应该是一致的。利用递归的思想就可以解...

2019-03-14 22:25:34 380

原创 二叉树的镜像(Java实现)

题目描述操作给定的二叉树,将其变换为源二叉树的镜像。输入描述:二叉树的镜像定义:源二叉树8/ \、6 10/ \ / \、5 7 9 11镜像二叉树8/ \、10 6/ \ / \、11 9 7 5解题思路递归的思想,交换两个子节点。代码实现:/**public class TreeNode { int val = 0; ...

2019-03-14 22:04:04 2509

原创 包含min函数的栈(Java实现)

题目描述定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。解题思路设置两个栈,一个用来存放数据,一个用来存放当前的最小值。每次push一个数时,如果为空,则两个栈都push。如果非空,data栈push,min栈比较与栈顶元素的大小,push较小的那个进栈。example:push:4, 8, 3, 1data: 4, 8, 3...

2019-03-12 16:26:46 157

原创 顺时针打印矩阵(Java实现)

题目描述输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10.解题思路自己动手画几个例子,可以看出可以把问题划分为每次打印一个圈,每个圈的起始坐标为[0,0],[1,1],[2,...

2019-03-12 15:50:16 1078

原创 合并两个排序的链表(Java实现)

题目描述输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。解题思路先在两个头结点中选择出一个较小的作为新链表的头结点,被选的节点指向下一个节点。新头结点的下一个节点就是再次比较两个排序链表的头结点的大小,可以用递归。注意当输入为空链表的情况,输出的结果就是另一个链表。代码实现/*public class ListNode { int ...

2019-03-12 12:15:17 1913

原创 链表中环的入口节点(Java实现)

题目描述给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。解题思路第一步:判断链表中是否有环。设置连个指针同时指向头节点,一个指针每次走两步,一个指针每次走一步,如果存在环,则两个指针一定可以相遇,相遇的节点一定是环内的某一点。第二部:确定环中节点数目。从第一步中可以得到环中的一个节点,设置一个指针指向这个节点,遍历环一次,统计出有多少个节点。第三步:找出环的...

2019-03-11 12:16:47 1382

原创 链表中倒数第k个节点(Java实现)

题目描述输入一个链表,输出该链表中倒数第k个结点。解题思路我解决本题的思路是建立在只遍历一遍链表的基础之上的。定义两个指向头节点的指针,第一个指针走了k-1步之后,第二个指针开始走,直到第一个指针到达尾节点。因为两个指针之间的距离始终保持在k-1步,所以当第一个指针到达尾节点的时候,第二个指针正好到达倒数第k个节点。代码实现/*public class ListNode { ...

2019-03-11 10:48:35 1440

原创 二进制中1的个数(Java实现)

题目描述输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。解题思路首先要熟悉二进制的位运算:&是与操作,|是或操作,^是异或操作,<<是左移,>>是右移如果是一个有符号数,右移操作时,用符号位填补最左边的数字。这道题问1的个数,考虑到只有1&1=1,所以可以将每一位与1做与操作,得到结果为1则表示该位位1 。这里需要考虑是将整数右...

2019-03-08 19:07:43 2848

原创 数组中出现次数超过一半的数(Java实现)

题目描述数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。解题思路数组中有一个数组出现的次数超过一半,这意味它出现的次数比其他所有数字出现的次数之和还要大。因此我们可以在遍历数组的时候保存两个值,一个是当前数字,一个是这个数字出现的次...

2019-03-08 17:46:36 1314

原创 旋转数组的最小数字(Java实现)

问题描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。解题思路将数组旋转之后,可以看做把原来的数组分成了两个不递减数组,{3, 4,5}和{1, 2},而最小的数“...

2019-03-05 18:10:42 132

原创 Java——接口、lambda表达式

参考书目——《Java核心技术 卷一》第六章1.接口接口中的方法自动的属于public有些接口可能包含多个方法,在接口中还可以定义常量接口绝不能含有实例域,在Java SE 8之前,也不能在接口中实现方法(现在可以在接口中提供简单的方法,但是这些方法不能引用实例域)让类实现一个接口通常需要以下两个步骤:(1)将类声明为实现给定的接口(2)对接口中的所有方法进行定义...

2019-03-05 09:13:37 159

原创 变态跳台阶(Java实现)

题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。思路分析动手算出前几项结果,找规律1:1【1】2:1+1/2【2】3:1+1+1/2+1/1+2/3 【4】4:1+1+1+1/2+1+1/1+2+1/1+1+2/2+2/1+3/3+1/4 【8】…代码如下:public class...

2019-03-04 17:46:37 608

原创 矩形覆盖(Java实现)

题目描述我们可以用21的小矩形横着或者竖着去覆盖更大的矩形。请问用n个21的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?解题思路斐波那契数列代码如下:public class Solution { public int RectCover(int target) { if(target == 1) { return 1; ...

2019-03-04 17:36:33 208

原创 跳台阶(Java实现)

题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。解题思路斐波那契数列代码如下:public class Solution { public int JumpFloor(int target) { if(target == 1) { return 1; ...

2019-03-04 17:33:18 624

原创 斐波那契数列(Java实现)

题目描述大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=39解题思路一:用递归的方法。代码如下:public class Solution { public int Fibonacci(int n) { if(n == 0) { return 0; } ...

2019-03-04 17:22:45 47218 4

原创 Java——继承

参考书目——《Java核心技术 卷一》第五章1.类、超类、子类子类继承超类,Java中用关键字extends表示继承(子类 extends 超类),所有的继承都是公有继承。子类比超类拥有的功能更加丰富,封装了更多的数据。子类不能直接访问超类的私有域。覆盖方法。超类中的有些方法并不适用与子类,需要提供一个新的方法来覆盖超类中的这个方法。在覆盖一个方法时,子类的方法不能低于超类方法的可见性...

2019-03-04 13:42:51 105

原创 用两个栈实现队列(Java实现)

题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。解题思路两个栈stack1和stack2 。开始时,每次添加队尾元素到stack1中。如果需要弹出队头元素,则将stack1中的元素弹出并push到stack2中,再将stack2的栈顶元素弹出,即为弹出了队头元素。如果stack2中是非空的,再在队尾中添加元素的时候仍然加到stack1中,从s...

2019-03-04 10:39:57 7881 2

原创 Java——类与对象

参考书目——《Java核心技术 卷一》第四章1. Java对象变量可以将Java的对象变量看做c++的对象指针,例如:Date birthDay;//java//实际上等价于Date *birthDay使用new方法可以构造新的对象,new Date();注意birthDay是对象变量,不是一个对象。此时的birthDay同样也没有引用对象,因此不能将任何Date方法用于这个变...

2019-03-04 10:04:35 126

原创 二叉树的下一个结点(Java实现)

题目描述给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。解题思路见注释代码实现:/*public class TreeLinkNode { int val; TreeLinkNode left = null; TreeLinkNode right = null; Tre...

2019-03-03 10:55:17 317

原创 重建二叉树(Java实现)

题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。解题思路前序遍历的一个结果是根节点。这样可以根据中序遍历中根节点的位置将二叉树分成两个字树(左子树、右子树),利用递归的思想可以解决这个问题。实现代...

2019-03-03 10:20:13 3330 1

原创 反转链表(Java实现)

题目描述输入一个链表,反转链表后,输出新链表的表头。解题思路当对一个节点的next指针进行反转时,会造成链表的断裂,需要保存当前节点的next节点。代码实现:/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; ...

2019-03-02 09:31:24 495 1

原创 从头到尾打印链表(Java实现)

从头到尾打印链表(Java实现)问题描述输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。解题思路利用栈“先入后出”的特性。代码实现:/*** public class ListNode {* int val;* ListNode next = null;** ListNode(int val) {* ...

2019-03-02 09:01:28 3954

原创 Java连接mysql

Java连接mysql遇到的问题:因为MySQL装的是8.0版本,对应的驱动也要装成8.0版本以上的。若用5.x的版本就会报错装好新的驱动之后,要注意在URL中添加useSSL=false&serverTimezone=GMT%2B8, 用&隔开。MySQL默认的数据通道是不加密的,在一些安全性要求特别高的场景下,我们需要配置MySQL端口为SSL,使得数据通道加密处理,...

2019-03-01 22:54:20 118

GTM随机过程

GTM17随机过程 Random processes (Murray Rosenblatt)

2019-01-04

算法导论 第三版英文版 有索引

2017-03-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除