摘要:
题目描述:
用两个栈来实现一个队列,完成队列的 Push 和 Pop 操作。
解题思路:
in 栈用来处理入栈(push)操作,out 栈用来处理出栈(pop)操作。一个元素进入 in 栈之后,出栈的顺序被反转。当元素要出栈时,需要先进入 out 栈,此时元素出栈顺序再一次被反转,因此出栈顺序就和最开始入栈顺序是相同的,先进入的元素先退出,这就是队列的顺序。 阅读全文
摘要:
启动redis客户端时,提示"目标计算机积极拒绝,无法连接" 阅读全文
摘要:
中序遍历的顺序为:{d,b,h,e,i,a,f,c,g}
中序遍历分为三种情况:
1. 如果当前结点有右子树
下一个节点就是它的右子树的最左子节点(从右子节点出发一致沿着指向左子节点的指针,即可找到)
如:b ——>h, a——>f
2. 如果当前节点没有右子树
(1) 如果当前节点是它父节点的左子节点
下一个节点就是它的父节点
如:d——>b, f——>c, h——>e
(2)如果当前节点是它父节点的右子节点
沿着指向父节点的指针一直向上遍历,直到找到一个是它父节点的左子节点的节点,如果这样的节点存在,那么这个节点的父节点就是我们要找到的下一个节点
如:i节点的下一个节点:沿着指向父节点的指针向上遍历,先到e,e是b的右子节点,不是,继续向上遍历,到b, b是a的左子节点,因此节点b的父节点a就是i的下一个节点 阅读全文
摘要:
题目描述:
根据二叉树的前序遍历和中序遍历的结果,重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。
解题思路:
前序遍历的第一个节点为根节点,再用这个根节点在中序遍历中将其分为前后两部分,然后再依次递归; 阅读全文
摘要:
题目描述:
将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy.
解题思路:
在字符串后任意填充字符,使得字符串替换前的长度=替换后的长度,例如上面这个例子,替换前长度为12,替换后的长度为16,所以在原来字符串的基础上填充2位.
p1指向填充前的末尾,p2指向填充后的末尾:
然后p1,p2一起前移,如果p1不是空格,则p2=p1;如果p1是空格,则p2依次输入"02%" 阅读全文
摘要:
题目描述: 从尾到头反过来打印出每个结点的值。 解题思路: 递归: 要逆序打印链表 1->2->3(3,2,1),可以先逆序打印链表 2->3(3,2),最后再打印第一个节点 1。 而链表 2->3 可以看成一个新的链表,要逆序打印该链表可以继续使用求解函数,也就是在求解函数中调用自己,这就是递归函 阅读全文
摘要:
如果有多个已经被实例化的List 集合,想要把他们组合成一个整体,这里必须直接使用List 自身提供的一个方法List.addAll(),否则使用了List.add()方法,则会输出不正常的信息。
这里不能简单的使用List.add()方法,如果使用了List.add()方法,程序只能找到相应往List中添加的List 集合个数,而不会返回相应的全部结果集。 阅读全文
摘要:
分为三步:
1.邮箱的设置:在你使用的邮箱内启用客户端SMTP服务
2.Spring Email:导入jar包;邮箱参数配置;使用JavaMailSender发送邮件
3.模板引擎:使用Thymeleaf发送HTML邮件 阅读全文
摘要:
错误示范: 解决方法: 在 <!doctype html> 下加入下面这个标签: <!--suppress ALL--> 修改之后: 阅读全文
摘要:
不多说,直接上排查方法: 步骤1、pom 引入 依赖mybatis-spring-boot-starter2、启动类中 注解扫描mapper接口@MapperScan(basePackages = "com.xxx.mapper") 3、配置文件application.properties中介入xm 阅读全文