算法中的二叉树问题(简单) 二叉树一、中序遍历1.递归方法2.非递归法二、先序遍历1.递归方法2.非递归方法三、后序遍历1.递归方法2.非递归法树结构://Definition for a binary tree node.public class TreeNode { int val; TreeNode left; TreeNode right; TreeNode() {} TreeNode(int val) { this.val = val; } TreeNode(int va
算法中的链表问题 链表问题一、判断单链表是否有环1.哈希表2.快慢指针二、判断两个链表是否相交1.不存在环的情况一、判断单链表是否有环1.哈希表遍历链表,把每个结点记录到哈希表中若最后能够遍历完链表,说明不存在环若遍历时出现了已经存在于哈希表中的结点,说明存在环,且该节点为环的起点。注意:不可能存在既有环还能闭合的单链表,若存在则有一个节点必有两个next节点。public class Solution { public boolean hasCycle(ListNode head) {
软件杯竞赛idea启动问题 一、问题描述在第一次使用脚本启动后关闭命令行,再次用idea启动会出现8080端口占用和mysql命令行自动关闭的问题。问题产生的原因是关闭的时候没有正常关闭服务,只需要关闭mysql再关闭占用8080端口的进程即可。二、解决方法1.关闭mysql管理员身份进入命令行,输入net stop mysql。2.关闭占用进程在命令行输入命令netstat -ano找到占用8080端口的进程,记住它的进程号pid,打开任务管理器在任务管理器中找到pid对应的进程,右键关闭进程。三、验证结果按
gradle的下载和配置 软件杯竞赛idea启动方式关于gradle的问题一、问题描述报错如下:could not find method compile() for arguments[…解决方法:手动重新下载gradle并配置环境配置idea二、下载gradle下载链接1.进入下载链接后,选择4.8版本的gradle下载(其他版本可能会报错)2.下载成功后将文件夹解压我的解压地址是:E:\gradle-4.8-bin\gradle-4.83.然后配置环境变量这里我用的是7.4.2版本的做演示.
SpringMVC学习笔记 SpringMVC学习笔记一、知识回顾1.回顾MVC2.回顾Servlet二、初识SpringMVC1.SpringMVC工作原理2.常用组件总结一、知识回顾1.回顾MVCM:Model模型(dao,service),是指模型表示业务规则。在MVC的三个部件中,模型拥有最多的处理任务。被模型返回的数据是中立的,模型与数据格式无关,这样一个模型能为多个视图提供数据,由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。V:View视图层(jsp),指用户看到并与之交互的界面。
Mysql学习笔记六 事务和索引一、事务1.何为事务2.自定义事务二、索引1. 索引的分类2.索引的使用一、事务1.何为事务要么都成功,要么都失败sql执行:A给B转账sql执行:B收到A的钱转账的两个操作必须都成功或都失败,不可能A给了钱B却没收到钱。事务原则(acid):原子性(atomicity,或称不可分割性)要么都成功,要么都失败一致性(consistency)事务前后的数据完整性要保证一致隔离性(isolation,又称独立性)多个用户并发访问数据库时,数据库为每个用户开启的事务不能被
Mysql学习笔记五 DQL查询数据一、DQL二、指定查询字段三、where条件子句1.逻辑运算符一、DQLData Query Language:数据查询语言所有查询操作都用它 select简单,复杂的查询它都能做数据库最核心的语言,最重要的语句使用频率最高的语句二、指定查询字段语法:select 字段1,字段2,… from 表;-- 查询所有的学生-- 语法:select 字段 from 表;select * from student;-- 查询指定字段select studentnam
Mysql学习笔记四 Mysql数据管理一、外键(了解即可)二、DML语言(重点)1.添加2.修改3.删除一、外键(了解即可)方式一,创建表的时候增加约束(麻烦,比较复杂)create table `grade`( `gradeid` int(10) not null auto_increment comment '年级id', `gradename` varchar(50) not null comment '年纪名称', primary key(`gradeid`))--学生表的gradeid字段要去应