- 博客(71)
- 问答 (1)
- 收藏
- 关注
转载 JZ36 两个链表的第一个公共结点
描述输入两个无环的单链表,找出它们的第一个公共结点。(注意因为传入数据是链表,所以错误测试数据的提示是用其他方式显示的,保证传入数据是正确的)示例1输入:{1,2,3},{4,5},{6,7}返回值:{6,7}说明:第一个参数{1,2,3}代表是第一个链表非公共部分,第二个参数{4,5}代表是第二个链表非公共部分,最后的{6,7}表示的是2个链表的公共部分 这3个参数最后在后台会组装成为2个两个无环的单链表,且是有公共节点的示例2输入:{1},{2,3},{}返回值:{
2021-07-22 00:04:47 124
转载 JZ35 数组中的逆序对
描述在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。 即输出P%1000000007对于50\%50%的数据,size\leq 10^4size≤104对于100\%100%的数据,size\leq 10^5size≤105输入描述:题目保证输入的数组中没有的相同的数字示例1输入:[1,2,3,4,5,6,7,0]返回值:7归并的经典题..
2021-07-21 23:51:37 136
转载 JZ34 第一个只出现一次的字符
描述在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写).(从0开始计数)示例1输入:"google"返回值:4hashMap 思路创建一个hashmap,然后遍历整个字符串一遍,记录下每个字符出现的次数 再次遍历整个字符串,根据我们前面存储的hashmap找哪个字符只出现过一次,直接返回他的位置这里有个重点是,题目里说,字符需要区分大小写,因为我们这里是直接存..
2021-07-21 23:30:28 141
转载 JZ33 丑数
描述把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。示例1输入:7返回值:8思路丑数能够分解成2^x3^y5^z,所以只需要把得到的丑数不断地乘以2、3、5之后并放入他们应该放置的位置即可,而此题的难点就在于如何有序的放在合适的位置。1乘以 (2、3、5)=2、3、5;2乘以(2、3、5)=4、6、10;3乘以(2、3、5)=6,9,15;5
2021-07-21 23:17:25 109
转载 JZ32 把数组排成最小的数
描述输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。示例1输入:[3,32,321]返回值:"321323"思路比较两个字符串s1, s2大小的时候,先将它们拼接起来,比较s1+s2,和s2+s1那个大,如果s1+s2大,那说明s2应该放前面,所以按这个规则,s2就应该排在s1前面。 public String PrintMinNumber(
2021-07-20 23:54:11 64
转载 JZ31 整数中1出现的次数(从1到n整数中1出现的次数)
描述输入一个整数 n ,求1~n这n个整数的十进制表示中1出现的次数例如,1~13中包含1的数字有1、10、11、12、13因此共出现6次示例1输入:13返回值:6String.valueOf : 由基本数据型态转换成String类别toCharArray : 获得字符 public int NumberOf1Between1AndN_Solution(int n) { int res=0; while(n>0){ ..
2021-07-20 23:42:09 62
转载 JZ30 连续子数组的最大和
描述输入一个整型数组,数组里有正数也有负数。数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。要求时间复杂度为 O(n).示例1输入:[1,-2,3,10,-4,7,2,-5]返回值:18说明:输入的数组为{1,-2,3,10,-4,7,2,-5},和最大的子数组为{3,10,-4,7,2},因此输出为该子数组的和 18。思路状态定义:dp[i]表示以i结尾的连续子数组的最大和。所以最终要求dp[n-1]状态转移方程:dp[i] = max(array.
2021-07-20 23:29:53 118
转载 JZ29 最小的K个数 (优先队列不会)
描述给定一个数组,找出其中最小的K个数。例如数组元素是4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4。0 <= k <= input.length <= 10000 0 <= input[i]<= 10000示例1输入:[4,5,1,6,2,7,3,8],4返回值:[1,2,3,4]说明:返回最小的4个数即可,返回[1,3,2,4]也可以示例2输入:[1],0返回值:[]示例3输入:[0,1,2.
2021-07-20 23:04:40 107
原创 JZ28 数组中出现次数超过一半的数字
描述数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组[1,2,3,2,2,2,5,4,2]。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。你可以假设数组是非空的,并且给定的数组总是存在多数元素。1<=数组长度<=50000示例1输入:[1,2,3,2,2,2,5,4,2]返回值:2示例2输入:[3,3,3,3,2,2,2]返回值:3示例3输入:[1]返回值:1排序法 pub
2021-07-20 00:03:33 58
转载 JZ27 字符串的排列 还是不懂
描述输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则按字典序打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。输入描述:输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。示例1输入:"ab"返回值:["ab","ba"]charAt() 方法用于返回指定索引处的字符。索引范围为从 0 到 length() - 1。substring() 方法返回字符串的子字符串。pu..
2021-07-19 23:25:11 98
转载 JZ26 二叉搜索树与双向链表
描述输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。如下图所示注意:1.要求不能创建任何新的结点,只能调整树中结点指针的指向。当转化完成以后,树中节点的左指针需要指向前驱,树中节点的右指针需要指向后继2.返回链表中的第一个节点的指针3.函数返回的TreeNode,有左右指针,其实可以看成一个双向链表的数据结构4.你不用输出或者处理,示例中输出里面的英文,比如"From left to right are:"这样的,程序会根据你的返回值自动打印输出示例:输入:.
2021-07-19 22:47:34 68
转载 JZ25 复杂链表的复制(看不太明白)
描述输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针random指向一个随机节点),请对此链表进行深拷贝,并返回拷贝后的头结点。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空)。下图是一个含有5个结点的复杂链表。图中实线箭头表示next指针,虚线箭头表示random指针。为简单起见,指向null的指针没有画出示例:输入:{1,2,3,4,5,3,5,#,2,#}输出:{1,2,3,4,5,3,5,#,2,#}解析:..
2021-07-13 22:15:06 100
转载 JZ24 二叉树中和为某一值的路径(不会)
描述输入一颗二叉树的根节点和一个整数,按字典序打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。示例1输入:{10,5,12,4,7},22返回值:[[10,5,7],[10,12]]示例2输入:{10,5,12,4,7},15返回值:[]思路:递归递归方法是返回当前路径下匹配目标值的路径。目标值 = 目标值 - 当前节点值共有几种情况:0,当节点为空,return1,当目标值.
2021-07-13 20:44:50 105
转载 Mybatis
1.简介1.1什么是MybatisMyBatis 是一款优秀的持久层框架, 它支持自定义 SQL、存储过程以及高级映射。 MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。 MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。 MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache s.
2021-07-13 00:00:35 239
转载 JZ23 二叉搜索树的后序遍历序列(不会)
描述输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则返回true,否则返回false。假设输入的数组的任意两个数字都互不相同。(ps:我们约定空树不是二叉搜索树)示例1输入:[4,8,6,12,16,14,10]返回值:true public boolean VerifySquenceOfBST(int [] sequence) { if(sequence.length==0) return false;.
2021-07-12 20:51:54 63
转载 JZ22 从上往下打印二叉树 (树看不太懂)
描述从上往下打印出二叉树的每个节点,同层节点从左至右打印。示例1输入:{5,4,#,3,#,2,#,1}返回值:[5,4,3,2,1]解题思路广度优先遍历 BFSpackage com.LeetCodeProblem.JZ;import java.util.LinkedList;import java.util.Queue;import java.util.ArrayList;public class JZ22 { public ArrayLis..
2021-07-12 20:40:49 133
原创 JZ21 栈的压入、弹出序列 (不太理解题目
描述输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的)示例1输入:[1,2,3,4,5],[4,3,5,1,2]返回值:false我的答案(错误的)package com.LeetCodeProblem.JZ;impor..
2021-07-12 20:01:36 96
转载 JZ20 包含min函数的栈
栈是否为空用isEmpty()判断,切记不可用stack==null描述定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数,并且调用 min函数、push函数 及 pop函数 的时间复杂度都是 O(1)push(value):将value压入栈中pop():弹出栈顶元素top():获取栈顶元素min():获取栈中最小元素示例:输入:["PSH-1","PSH2","MIN","TOP","POP","PSH1","TOP","MIN"]...
2021-07-12 00:09:09 60
转载 JZ19 顺时针打印矩阵
描述输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下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]示例1输入:[[1,2],[3,4]]返回值:[1,2,4,3]1. 分析简单来说,就是不断地收缩矩阵的边界定义四个变量代表范围,up、down、left、right
2021-07-11 23:29:25 73
转载 JZ18 二叉树的镜像
描述操作给定的二叉树,将其变换为源二叉树的镜像。比如: 源二叉树 8 / \ 6 10 / \ / \ 5 7 9 11 镜像二叉树 8 / \ 10 6 / \ / \ 11 9 7 5示例1输入:{8,6,10,5,7,9,11}...
2021-07-07 23:57:29 16024
转载 JZ17 树的子结构 (不会跳过,后续补树)
描述输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)示例1输入:{8,8,#,9,#,2,#,5},{8,9,#,2}返回值:true思路:遍历大树,找到与子结构跟节点相同的节点,然后传入判断函数进行遍历比较public boolean HasSubtree(TreeNode root1,TreeNode root2) { //遍历大树 if(root1 == null || root2.
2021-07-07 23:50:18 94
转载 JZ16 合并两个排序的链表
描述输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。示例1输入:{1,3,5},{2,4,6}返回值:{1,2,3,4,5,6}
2021-07-07 23:11:33 85
转载 MySQL 7.索引 8. 权限管理和备份 9.规范数据库设计
7 索引MySQL官方对索引的定义为:索引(index)是帮助MySQL高效获取数据的数据结构。提取句子主干,就可以得到索引的本质:索引是数据结构7.1 索引的分类在一个表中,主键索引只能有一个,唯一索引可以有多个 主键索引 primary key 唯一的标识,主键不可重复,只能有一个列作为主键 唯一索引 unique key 避免重复的列出现,唯一索引可以重复,多个列都可以标识为 unique ...
2021-07-07 22:24:44 148
转载 JZ15 反转链表
描述输入一个链表,反转链表后,输出新链表的表头。示例1输入:{1,2,3}返回值:{3,2,1}反转链表以3个节点为例:用pre记录当前节点的前一个节点用next记录当前节点的后一个节点 当前节点a不为空,进入循环,先记录a的下一个节点位置next = b;再让a的指针指向pre 移动pre和head的位置,正因为刚才记录了下一个节点的位置,所以该链表没有断,我们让head走向b的位置。 当前节点为b不为空,先记录下一个节点的位置,让b指向p.
2021-07-06 23:51:43 45
转载 JZ14 链表中倒数最后k个节点
描述输入一个链表,输出一个链表,该输出链表包含原链表中从倒数第k个结点至尾节点的全部节点。如果该链表长度小于k,请返回一个长度为 0 的链表。示例1输入:{1,2,3,4,5},1返回值:{5}...
2021-07-06 22:54:54 133
转载 MySQL 5. MySQL函数 6. 事务
5.1 常用函数-- 常用函数-- 数学运算SELECT ABS(-7) -- 绝对值SELECT CEILING(9.4) -- 向上取整SELECT FLOOR(9.4) -- 向下取整SELECT RAND() -- 返回一个0-1之间的随机数SELECT SIGN() -- 判断一个数的符号,0=0 负数返回-1,正数返回1-- 字符串SELECT CHAR_LENGTH('ahhhhhh') -- 字符串长度SELECT CONCAT('java','is','th
2021-07-06 22:00:58 75
原创 JZ13 调整数组顺序使奇数位于偶数前面
描述输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。示例1输入:[1,2,3,4]返回值:[1,3,2,4]示例2输入:[2,4,6,5,7]返回值:[5,7,2,4,6]1.通过反向遍历数组,用栈来实现 public int[] reOrderArray (int[] array) { if(array.length.
2021-07-05 22:14:19 38
转载 JZ12 数值的整数次方
描述给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。保证base和exponent不同时为0。不得使用库函数,同时不需要考虑大数问题,也不用考虑小数点后面0的位数。示例1输入:2.00000,3返回值:8.00000示例2输入:2.10000,3返回值:9.26100示例3输入:2.00000,-2返回值:0.25000说明:2的-2次方等于1/4=0.251. 暴力解法 .
2021-07-05 21:42:56 35
转载 JZ11 二进制中1的个数(补充理解位运算符)
描述输入一个整数,输出该数32位二进制表示中1的个数。其中负数用补码表示。示例1输入:10返回值:2关于位运算符详解https://www.cnblogs.com/shuaiding/p/11124974.html public int NumberOf1(int n) { int res=0; while (n!=0) { if ((n & 1) == 1) res++; n &.
2021-07-05 21:02:26 66
转载 JZ10 矩形覆盖
描述我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,从同一个方向看总共有多少种不同的方法?比如n=3时,2*3的矩形块有3种不同的覆盖方法(从同一个方向看):输入描述:2*1的小矩形的总个数n返回值描述:覆盖一个2*n的大矩形总共有多少种不同的方法(从同一个方向看)示例1输入:0返回值:0示例2输入:1返回值:1示例3输入:4返回值:5...
2021-07-05 20:05:47 33
转载 JZ9 跳台阶扩展问题
描述一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶(n为正整数)总共有多少种跳法。示例1输入:3返回值:4关于本题,前提是n个台阶会有一次n阶的跳法。分析如下:f(1) = 1f(2) = f(2-1) + f(2-2) //f(2-2) 表示2阶一次跳2阶的次数。f(3) = f(3-1) + f(3-2) + f(3-3)...f(n) = f(n-1) + f(n-2) + f(n-3) + ...
2021-07-05 19:37:45 236
转载 MySQL 3. MySQL数据管理 4.DQL查询数据(最重点)
3.MySQL数据管理3.1 外键(了解即可)CREATE TABLE `grade`(`gradeid`INT(10) NOT NULL AUTO_INCREMENT COMMENT'年级id',`gradename`VARCHAR(50)NOT NULL COMMENT'年级名称',PRIMARY KEY(`gradeid`))ENGINE=INNODB DEFAULT CHARSET=utf8-- 学生表的gradeid字段 要去引用年级表的gradeid-- 1.定义外键ke
2021-07-05 17:55:01 147
转载 MySQL 1.初识MySQL;2.操作数据库
1.初始MySQLJavaEE: 企业级Java开发 Web前端(页面:展示,数据!)后台(连接点:连接数据库JDBC,连接前端(控制,控制视图调整,以及给前端传数据)数据库(存数据,Txt,Excel,Word)只会写代码,学好数据库----基本混饭吃;操作系统,数据结构与算法----还不错的程序员离散数学,数字电路,体系结构,编译原理,实战----优秀~1.1 为什么学数据库1.岗位需求2.大数据时代,数据变现3.被迫需求:存数据 不用IOE(太贵..
2021-07-04 23:58:36 323
原创 JZ8 跳台阶
描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。示例1输入:2返回值:2示例2输入:7返回值:21题目解析这是一道经典的递推题目,你可以想如果青蛙当前在第n级台阶上,那它上一步是在哪里呢?显然,由于它可以跳1级台阶或者2级台阶,所以它上一步必定在第n-1,或者第n-2级台阶,也就是说它跳上n级台阶的跳法数是跳上n-1和跳上n-2级台阶的跳法数之和。设跳上i级台阶有f(n)种跳..
2021-07-04 16:07:40 104
转载 JZ7 斐波那契数列
描述大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0,第1项是1)。n≤39题目分析,斐波那契数列公式为:f[n] = f[n-1] + f[n-2], 初始值f[0]=0, f[1]=1,目标求f[n]示例1输入:4返回值:3方法一 递归实现:package com.LeetCodeProblem;public class JZ7 { //斐波那契数列公式为:f[n] = f[n-1] + f[n-2],.
2021-07-04 12:53:25 89
转载 JZ6 旋转数组的最小数字
描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。示例1输入:[3,4,5,1,2]返回值:1返回最小值,同时要把数组旋转一下package com.LeetCodeProblem;import java.util.ArrayList;public class JZ6 { public int minNumberInR.
2021-07-03 19:23:37 154
转载 JZ5 使用两个栈实现队列
描述用两个栈来实现一个队列,分别完成在队列尾部插入整数(push)和在队列头部删除整数(pop)的功能。 队列中的元素为int类型。保证操作合法,即保证pop操作时队列内已有元素。解析:"PSH1":代表将1插入队列尾部"PSH2":代表将2插入队列尾部"POP“:代表删除一个元素,先进先出=>返回1"POP“:代表删除一个元素,先进先出=>返回2示例1输入:["PSH1","PSH2","POP","POP"]返回值:1,21. 分析队.
2021-07-03 17:50:15 121
转载 JZ4 重建二叉树(题都没看懂,晚上再问别人)
描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。示例1输入:[1,2,3,4,5,6,7],[3,2,4,1,6,5,7]返回值:{1,2,5,3,4,6,7}1. 分析根据中序遍历和前序遍历可以确定二叉树,具体过程为:根据前序序列第一个结点确定根结点 根据根结点在中序序列中的位.
2021-07-03 17:01:43 44
转载 JZ3 从头到尾打印链表
描述输入一个链表的头节点,按链表从尾到头的顺序返回每个节点的值(用数组返回)。示例1输入:{1,2,3}返回值:[3,2,1]示例2输入:{67,0,24,58}返回值:[58,24,0,67]
2021-07-03 16:20:06 56
转载 JZ2 替换空格
描述请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。示例1输入:"We Are Happy"返回值:"We%20Are%20Happy"package com.LeetCodeProblem;public class JZ2 { public String replaceSpace (String s) {// if(!s.contain.
2021-07-01 22:37:06 74
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人