leetcode刷题142 环形链表 1.leetcode 142 题目:https://leetcode-cn.com/problems/linked-list-cycle-ii给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果 pos 是 -1,则在该链表中没有环。注意:pos 不作为参数进行传递
Python 使用Tkinter制作签名(附完整代码) 思路:先选择在线签名网站,找到接口模拟请求,然后将生成的签名图片显示在 Tkinter 生成的 GUI 窗口上,最后保存生成的签名图片选择网址为:http://www.uustv.com/首先了解爬虫的基本步骤:发起请求 :即发送一个Request,可能包含额外的headers,data等信息获取响应内容 :得到网页的HTML文件内容解析内容:可以使用正则表达式提取出想要的内容保存数据:将数据存为文本,或mp3,mp4等文件或存到数据库等一.首先确定GUI界面:例如如:代.
报错:pymysql.err.IntegrityError: (1062, “Duplicate entry ‘1‘ for key ‘mm.PRIMARY‘“) 1.报错pymysql.err.IntegrityError: (1062, “Duplicate entry ‘1’ for key ‘mm.PRIMARY’”)因为插入的主键在数据库中已存在,要么删除数据库的主键,要么修改插入的主键
PyMySQL的简单使用(创建表和插入数据) 创建新的表及插入数据使用的pymysql 版本==0.9.3否则可能报错,新的版本使用方法改变了,查看官方文档import pymysql#1.执行的sql语句:#sql语句:如果没有此表则创建此新表sql_create_database = ''' CREATE TABLE if not exists `mm` ( `id` int(11) NOT NULL AUTO_INCREMENT, `song_id` int(11
MYSQL的安装 一.下载MySql及创建初始化文件下载Mysql数据压缩包解压缩(默认c盘,可以更改到其他盘),注意:记录存放路径创建初始化文件:找到解压好的文件夹根目录,创建.txt 文件,再改为my.ini文件输入下列命令:(只需改第三,第四行路径)[mysqld]port=3306basedir=E:\mysql\mysql ----安装路径datadir=E:\mysql\mysql\data ----安装路径\data data文件夹不用自己创建,它会自己生成,默认存放表的路径ma
Java多线程同步(3)---狂神说Java 文章目录1.Java多线程同步介绍2.三大不安全案例1.买火车票2.银行取钱3.线程不安全的集合三.同步方法及同步块四.CopyOnWriteArrayList五.死锁六.Lock锁1.Java多线程同步介绍多个线程操作同一个资源(上万人抢票,食堂排队买饭)线程同步条件:队列和锁(sleep每个对象有一把锁)2.三大不安全案例1.买火车票package syn;public class UnsafeBuyTicket { public static void main(Stri
Java多线程状态(2)----狂神说Java 文章目录1.线程停止2.线程休眠3.线程礼让4.Join5.观测线程状态6.线程的优先级7.守护线程多线程的状态:1.线程停止建议线程正常停止—>利用次数,不建议死循环建议使用标志位—>设置一个标志位不要使用stop或者destroy等过时,或者JDK不建议使用的方法自定义stop,可以看到threa停止,但是mian函数还在跑package statue;/*测试stop1。建议线程正常停止---》利用次数,不建议死循环2.建议使用标志位---》设置一个标志位3
Java静态代理模式 静态代理模式总结:真实对象和代理对象都要实现同一个接口代理对象要代理真实角色好处:代理对象可以做很多真实对象做不了的事情真实对象专注做自己的事情实例:package demo05;public class staticProxy { public static void main(String[] args) { WeddingCompany a =new WeddingCompany(new You()); a.happyMarry();
Java lambda使用和演变----狂神说java Lamda表达式接口a=(参数)->{核心代码}为什么使用lambda表达式?避免匿名内部类定义过多让代码看起来简洁留下核心的代码函数接口的定义:任何接口,只包含一个抽象方法,对于函数式接口,我们可以通过lambda表达式创建函数式接口的对象。总结:lambda表达式只一条语句可以去花括号,如果有多行,用{}包裹。使用lambda表达式前提:接口为函数式接口多个参数也可以去掉参数类型,要去掉就都去掉,必须加上括号例子:package lambda;public clas
Java多线程简介和创建(1)----狂神说JAVA 文章目录一.多线程简介二.多线程的创建1. 继承Thread类案例:多线程下载图片2.实现Runnable接口(推荐)初识并发问题龟兔赛跑3.实现Callable接口(了解)三 .线程的状态1.静态代理一.多线程简介多任务:同时干很多件事,但是是分时进行,不同时间交替较快。多线程:多条路线执行同一个任务。多线程:主线程先调用start方法,然后子线程执行run()方法程序,进程,线程:在操作系统中运行的是进程,例如qq,播放器,游戏等,而一个进程可以有多个线程:例如,视频中同时听声音,看图像
(八)Java异常处理机制 文章目录1.异常什么是异常?异常分类:异常体系结构2.捕获和抛出异常3.自定义异常1.异常什么是异常?异常分类:异常体系结构ErrorException2.捕获和抛出异常异常处理机制:步骤:1.抛出异常 2.捕获异常异常处理五个关键字:try 监听异常,监控区域catch 捕获异常(捕获异常类型)finally 善后工作,可以不要,在IO或资源关闭使用,最后被执行throw 主动抛出异常,一般在方法中使用throws 选可能抛出的异常代码块,快捷键:
(七)Java面向对象(下)抽象类,接口,N种内部类----狂神说Java 文章目录抽象类接口内部类抽象类注意:不能new抽象类,只能靠子类去实现它:约束抽象类里面可以有普通方法抽象方法必须在抽象类中,只有一个抽象方法,也必须在抽象类中abstract抽象方法,只有方法名字,没有方法的实现;继承了抽象类的子类,必须实现父类的所有抽象方法。抽象类只能单继承,(接口可以多继承)。、思考:存在构造器么?存在的意义?例子:package oop.demo09;//abstract 抽象类:是一个类,单继承 (接口可以多继承)public abstract
Java static 用法 static 注意事项:static 跟类一起产生静态方法不能调用非静态方法,非静态方法可以调用静态方法类可以直接调用静态static变量和static方法类的对象可以调用static和非static方法和变量静态方法的使用:package oop.demo08;public class Student { private static int age;//静态的变量 多线程 private double score ;//非静态变量 //非静态 publi
(六)Java面想对象编程(上)类,对象,封装,继承,多态,instanceof 一. 面向对象编程概念1.什么是面向对象2.回顾方法静态方法与非静态方法静态方法 static,可以直接调用- 非静态方法,需要生成实例才可以调用public class Demo1 { public static void main(String[] args) { // 静态方法 static,可以直接调用 Student.say(); // 非静态方法,需要生成实例才可以调用 Student student
(五)Java数组---狂神说Java 文章目录1.数组概念2.数组内存分析3数组初始化:4 数组下标越界及小结5.数组的使用6.多维数组7.Arrays类8.冒泡排序8.稀疏数组1.数组概念2.数组内存分析3数组初始化:创建main注意:一个java文件只有一个public类class Man{}public class Demo1 { public static void main(String[] args) { //静态初始化 创建+赋值 int[] a = {1,2,3,4,
(四)Java方法---狂神说Java 文章目录1.什么是方法2.定义3.方法重载4.命令行传参5.可变参数6.递归作业:1.什么是方法2.定义形参,实参3.方法重载public void max(){}public void max(int i){}public int max(int a, int b){}public float max(int a, double b){}4.命令行传参用法:运行一个java文件,要找到它的包的路径,因此要回到src.5.可变参数可以简化方法重载:public v
(三)Java控制流---狂神说Java 课程学习用户交互Scanner顺序结构选择结构循环结构break&continue练习Scanner用法:package base2;import java.util.Scanner;public class Demo01 { public static void main(String[] args) { //创建一个对象,system获取输入的键盘对象 Scanner scanner = new Scanner(System.i
Java 抽象工厂模式(类图及实现) 抽象工厂模式使用场景:例如如生产不同品牌旗下的一系列产品例如我之前拥有奔驰这一品牌,但是我又想创建宝马品牌,它们都分别拥有A(低端车),B(高端车)系列生产线。如图:品牌A(低端车)B(高端车)奔驰carAcarB宝马BaoCarABaoCarB可以分别建立低端车A和高端车B的接口,建立工厂的接口类图代码实现产品规划A系列抽象类 及奔驰的carA和宝马的BaoCarA实现interface LowCar { public voi