自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 资源 (6)
  • 收藏
  • 关注

原创 2021-10-25 跨程序共享数据

跨程序共享数据一、内容提供器1. 简介内容提供器主要用于在不同应用程序之间实现数据共享的功能提供一套完整的机制,允许一个程序访问另一个程序中的数据,同时保证被访问数据的安全性2. 与其他共享数据方式的区别不同于文件存储和SharedPreferences存储中的两种全局可读写操作模式内容选择器可以选择只对哪一部分数据进行共享,从而保证我们程序中的隐私数据不会有泄露的风险二、运行时权限1. Android权限机制1.1 例子当使用广播机制时,为了要访问系统的网络状态和监听开机广播在An

2021-10-30 23:13:05 1902

原创 2021-10-21 编写聊天界面实践

编写聊天界面实践一、制作Nine-Patch图片1. 为什么要制作Nine-Patch是一种被特殊处理过的png图片,能够指定哪些区域可以被拉伸,哪些区域不可以当我们用一个聊天气泡框作为聊天框的背景图片时,且LinearLayout的宽度被指定为match_parent由于图片的宽度不足以填满整个屏幕的宽度,整张图片被均匀地拉伸,效果非常差2. 如何制作2.1Android sdk目录下有一个tools文件夹,文件夹中找到draw9patch.bat文件要打开该文件,需要先将JDK的bin

2021-10-30 22:59:02 140

原创 2021-10-21 Android-Activity

一、第一个程序1. 代码分析1.1 Manifest.xml整个项目的配置文件,在程序中定义的所有四大组件都需要在这个文件里注册<activity android:name=".MainActivity" android:exported="true"> <intent-filter> <action android:name="android.intent.acti

2021-10-30 22:56:54 721

原创 2021-10-10 SQL

一、操作数据库1. 创建数据库create database if not exists student2. 删除数据库drop database if exists student3. 使用数据库use student4. 查看数据库show databases二、操作表1. 建表create table student( sno int(10), sname varchar(30), sex char(1), age int(10),

2021-10-10 13:28:18 92

原创 51. N皇后

51. N 皇后难度困难n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。给你一个整数 n ,返回所有不同的 n 皇后问题 的解决方案。每一种解法包含一个不同的 n 皇后问题 的棋子放置方案,该方案中 'Q' 和 '.' 分别代表了皇后和空位。示例 1:输入:n = 4输出:[[".Q..","...Q","Q...","..Q."],["..Q.","Q...","...Q",".Q.."]]解释:如上图所示,4 皇后问题存在两个不同的解

2021-10-06 22:52:09 44

原创 46. 全排列

46. 全排列难度中等给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。示例 1:输入:nums = [1,2,3]输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]示例 2:输入:nums = [0,1]输出:[[0,1],[1,0]]示例 3:输入:nums = [1]输出:[[1]]提示:• 1 <= nums.length <= 6• -10 <=

2021-10-06 22:49:45 49

原创 2021-10-01 注解与反射一

一、注解1.内置注解1.1 Override重写超类方法的注解只能用于修饰方法表示一个方法声明,打算重写超类中的另一个方法1.2 Depecated不推荐使用的可用于修饰方法、属性、类表示不鼓励程序员使用这样的元素1.3 SuppressWarnings镇压警告用来抑制编译时的警告信息使用时,需要参数2.元注解2.1 作用负责注解其他注解的,被用来提供对其他annotation类型作说明java定义了四个标准的meta-annotation类型2.2 包括T

2021-10-01 11:40:06 68

原创 2021-09-30 交错字符串

97. 交错字符串难度中等给定三个字符串 s1、s2、s3,请你帮忙验证 s3 是否是由 s1 和 s2 交错 组成的。两个字符串 s 和 t 交错 的定义与过程如下,其中每个字符串都会被分割成若干 非空 子字符串:• s = s1 + s2 + ... + sn• t = t1 + t2 + ... + tm• |n - m| <= 1• 交错 是 s1 + t1 + s2 + t2 + s3 + t3 + ... 或者 t1 + s1 + t2 + s2 + t3 + s3 + ..

2021-09-30 00:01:59 66

原创 2021-09-29 无重复字符的最长子串

3. 无重复字符的最长子串难度中等给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: s = "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: s = "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: s = "pwwkew"输出: 3解释: 因为无重复字符的最长子串是 "wke",所以其长度为 3。 请注意,你的答案必须

2021-09-29 23:59:24 63

原创 2021-09-29 词典中最长的单词

720. 词典中最长的单词难度简单给出一个字符串数组words组成的一本英语词典。从中找出最长的一个单词,该单词是由words词典中其他单词逐步添加一个字母组成。若其中有多个可行的答案,则返回答案中字典序最小的单词。若无答案,则返回空字符串。示例 1:输入:words = ["w","wo","wor","worl", "world"]输出:"world"解释: 单词"world"可由"w", "wo", "wor", 和 "worl"添加一个字母组成。示例 2:输入:words

2021-09-29 23:55:25 50

原创 2021-09-29 Spring整合Mybatis

方式一:用SqlSessionTemplate1.导包junitmysqlmybatisspringaop织入mybatis-springspring-jdbc <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version&gt

2021-09-29 23:30:54 55

原创 2021-09-29 SpringMVC回顾第一天

一、回顾MVC1. 简介是模型、视图、控制器的简写,是一种软件设计规范是用将显示、业务逻辑、数据分离的方法来组织代码主要作用是降低了视图与业务逻辑间的双向耦合最典型的MVC:JSP+Servlet+JavaBean2. 包括2.1 Model模型,包括数据DAO和业务逻辑Service,提供要展示的数据,因此包括数据和行为2.2 View视图JSP2.3 Controller控制器Servlet,接收用户请求,委托给模型进行处理,处理完毕后把模型返回的数据返回给视图,由视图负责展示

2021-09-29 23:24:40 47

原创 2021-09-24 下一个更大元素Ⅰ

496. 下一个更大元素 I难度简单给你两个 没有重复元素 的数组 nums1 和 nums2 ,其中nums1 是 nums2 的子集。请你找出 nums1 中每个元素在 nums2 中的下一个比其大的值。nums1 中数字 x 的下一个更大元素是指 x 在 nums2 中对应位置的右边的第一个比 x 大 的元素。如果不存在,对应位置输出 -1 。示例 1:输入: nums1 = [4,1,2], nums2 = [1,3,4,2].输出: [-1,3,-1]解释:对于 num1

2021-09-24 22:24:19 43

原创 2021-09-24 有效的括号

20. 有效的括号难度简单给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。有效字符串需满足: 1. 左括号必须用相同类型的右括号闭合。 2. 左括号必须以正确的顺序闭合。示例 1:输入:s = "()"输出:true示例 2:输入:s = "()[]{}"输出:true示例 3:输入:s = "(]"输出:false示例 4:输入:s = "([)]"输出:false示例 5:输入:s = "{[]}"

2021-09-24 22:21:58 39

原创 2021-09-24 Spring回顾第二天之AOP

一、代理模式1. 代理模式简介客户端不直接调用实际对象,而是通过代理间接调用实际的对象SpringAOP的底层就是代理模式代理模式分为静态代理模式和动态代理模式2. 静态代理2.1 角色1. 抽象角色:一般会用接口或抽象类来实现(租房)2. 真实角色:被代理的角色(房东)3. 代理角色:代理真实角色(中介)4. 客户:访问代理对象的人(租客)2.2. 代码实现2.2.1 原本1. 租房接口//租房接口public interface Rent{

2021-09-24 17:57:19 65

原创 2021-09-23 分割等和子集

416. 分割等和子集难度中等给你一个 只包含正整数 的 非空 数组 nums 。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。示例 1:输入:nums = [1,5,11,5]输出:true解释:数组可以分割成 [1, 5, 5] 和 [11] 。示例 2:输入:nums = [1,2,3,5]输出:false解释:数组不能分割成两个元素和相等的子集。提示:• 1 <= nums.length <= 200• 1 <= nums[i]

2021-09-23 23:42:55 68

原创 2021-09-23 爬楼梯

70. 爬楼梯难度简单假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。示例 1:输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶示例 2:输入: 3输出: 3解释: 有三种方法可以爬到楼顶。1. 1 阶 + 1 阶 + 1 阶2. 1 阶 + 2 阶3. 2 阶 + 1 阶来自 https://leetcode-cn.com

2021-09-23 23:39:58 43

原创 2021-09-23 斐波那契数

509. 斐波那契数难度简单斐波那契数,通常用 F(n) 表示,形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是:F(0) = 0,F(1) = 1F(n) = F(n - 1) + F(n - 2),其中 n > 1给你 n ,请计算 F(n) 。示例 1:输入:2输出:1解释:F(2) = F(1) + F(0) = 1 + 0 = 1示例 2:输入:3输出:2解释:F(3) = F(2) + F(1) = 1 +

2021-09-23 23:38:55 67

原创 2021-09-23 四数之和

18. 四数之和难度中等给你一个由 n 个整数组成的数组 nums ,和一个目标值 target 。请你找出并返回满足下述全部条件且不重复的四元组 [nums[a], nums[b], nums[c], nums[d]] :• 0 <= a, b, c, d < n• a、b、c 和 d 互不相同• nums[a] + nums[b] + nums[c] + nums[d] == target你可以按 任意顺序 返回答案 。示例 1:输入:nums = [1,0,-1,0,-2

2021-09-23 23:36:26 162

原创 2021-09-23 三数之和

15. 三数之和难度中等给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。示例 1:输入:nums = [-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]示例 2:输入:nums = []输出:[]示例 3:输入:nums = [0]输出:[]提示:• 0 <= nums.length &l

2021-09-23 23:34:23 95

原创 2021-09-23 两数之和Ⅱ-输入有序数组

167. 两数之和 II - 输入有序数组难度简单给定一个已按照 非递减顺序排列 的整数数组 numbers ,请你从数组中找出两个数满足 相加之和等于目标数 target 。函数应该以长度为 2 的整数数组的形式返回这两个数的下标值。numbers 的下标 从 1 开始计数 ,所以答案数组应当满足 1 <= answer[0] < answer[1] <= numbers.length 。你可以假设每个输入 只对应唯一的答案 ,而且你 不可以 重复使用相同的元素。

2021-09-23 23:31:19 58

原创 2021-09-23 Spring回顾第一天

Spring第一天一、Spring简介1. 概念Spring是一个轻量级的控制反转和面向切面编程的框架2. 优点1. 是一个开源、免费的框架2. 是一个轻量级、非入侵式的框架(只需要导入包)(导了之后对原项目不会有影响)3. 控制反转、面向切面编程4. 支持事务的处理,对框架整合的支持二、Spring组成1.七大模块2.三大思想三、ioc思想1. 原本:UserMapperpublic interface UserMapper{ public void selUse

2021-09-23 16:23:23 71

原创 2021-09-23 两数之和

1. 两数之和难度简单给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例 1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。示例 2:输入:nums = [3,2

2021-09-23 00:03:07 39

原创 2021-09-20 Mybatis框架搭建

Mybatis框架搭建步骤一、创建一个Maven项目二、在pom.xml文件中配置相关jar包<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.ap

2021-09-20 21:08:01 62

原创 Mybatis回顾第二天

一、参数类型MapXML映射语句中,参数类型为map类型相当于把一个User的属性和对应的值传进Map里public class TestMap{ public static void main(String[] args) { UserMapper userMapper = new UserMapperImpl(); Map<String,Object> map=new HashMap<>(); map.put("id

2021-09-20 00:02:35 37

原创 331.验证二叉树的前序序列化

331. 验证二叉树的前序序列化难度中等序列化二叉树的一种方法是使用前序遍历。当我们遇到一个非空节点时,我们可以记录下这个节点的值。如果它是一个空节点,我们可以使用一个标记值记录,例如 #。 _9_ / \ 3 2 / \ / \ 4 1 # 6/ \ / \ / \例如,上面的二叉树可以被序列化为字符串 “9,3,4,#,#,1,#,#,2,#,6,#,#”,其中 # 代表一个空节点。给定一串以逗号分隔的序列,验证它是否是正确的二叉树的

2021-09-19 23:27:47 96

原创 106. 从中序与后序遍历序列构造二叉树

思路:后序遍历:[[左子树的前序遍历结果],[右子树的前序遍历结果],根节点]中序遍历:[[左子树的前序遍历结果],根节点,[右子树的前序遍历结果]]从后往前遍历后序遍历序列,首先拿到整棵树的根节点的值带着该值去中序遍历序列中找到该值的定位,将中序遍历分为左右两部分得出左右两部分的长度之后,就可以在后序遍历序列中找到左子树的根节点和右子树的根节点,重复上述步骤注意:比较麻烦的是区间的更新函数:buildMyTree(int[] inorder 中序遍历.

2021-09-19 23:23:01 65

原创 105. 从前序与中序遍历序列构造二叉树

遍历二叉树前序遍历:1. 先访问根节点2. 递归遍历左子树3. 递归遍历右子树中序遍历1. 递归遍历左子树2. 访问根节点3. 递归遍历右子树方法一:递归我们可以从前序遍历的中,找到根节点的值,再拿着这个根节点的值去中序遍历中找到根节点的位置该根节点将中序遍历的数组分为左右两个部分,分别是根节点的左子树和右子树这样我们就可以再从前序遍历中找到左子树的根节点,去遍历中序遍历的左半部分找到右子树的根节点,去遍历中序遍历的右半部分前序遍历:[根节点,[左子树的前序遍历结果],.

2021-09-19 23:19:51 43

原创 637. 二叉树的层平均值

层次遍历class Solution { public List<Double> averageOfLevels(TreeNode root) { if(root==null) { return null; } Queue<TreeNode> q=new LinkedList<>(); List<Double> list=new Arr.

2021-09-18 23:11:40 36

原创 617. 合并二叉树

方法一:深度优先搜索思路:从根节点出发,同时遍历两棵二叉树,将对应的节点进行合并两棵二叉树对应的节点分为三种情况:1. 两个对应的节点都为空,则合并后的节点也为空2. 两个对应的节点其中有一个为空,则合并后的节点为非空的节点3. 两个对应的节点都不为空,则合并后的节点为两个非空节点的值之和递归过程:对两棵树的一个节点进行合并之后,还要对其左子树和右子树进行合并1. 如果节点一为空,则返回节点二2. 如果节点二为空,则返回节点一3. 如果都不为空,将节点一和节点二的值相加,创建一个新.

2021-09-18 23:09:22 79

原创 2021-09-17 Mybatis回顾第一天

一、概念Mybatis是一个基于Java的持久层框架持久化将程序的数据在持久状态和瞬时状态之间转化的过程为什么需要持久化:1. 内存断电即失 2. 内存太贵了 3. 有些对象不能让他丢失,如账号和密码持久:数据库、io文件(消耗的资源大)持久层完成持久化工作的代码块二、作用Mybatis避免了几乎所有的手动设置参数以及获取结果集Mybatis可以使用简单的XML或注解来配置和映射原生信息,将接口和Java的POJOs映射成数据库中的记录三、原理 每个基于 MyBatis 的应

2021-09-17 23:20:02 43

原创 2021-03-02 计算机网络

计算机网络第二章 数据链路层

2021-03-18 20:28:47 37

原创 MySQL基础

/*建立一张用来存储学生信息的表 字段包含学号、姓名、性别、年龄、入学日期、班级、email等信息 学号是主键 不能为空+唯一 姓名不能为空 性别默认值是男 Email唯一*/--创建数据库表create table student( sno int(6), sname varchar(10), sex char(1), age int(3), enterdate date , classname varcahr(20), email varchar(15)

2021-03-16 21:36:03 319

原创 2021-03-10 学生选课管理系统 C#

学生选课管理系统 C#实验内容(1)设计一个学生成绩管理信息系统,能对学生的成绩记录进行方便的输入、查询、修改等操作,以及综合统计查询等。(2)对学生成绩的综合查询,如查询个人的单科或所有成绩/不及格成绩,查询某门课程的所有程序等。(3)至少实现对一个数据表的完整操作(CRUD,增删查改)、综合(复合条件)查询;任务分析(1)完成界面设计和各界面之间的跳转和衔接(2)建立数据库(3)建立数据库连接(4)完善对数据库的操作核心代码public SqlConnection connecti

2021-03-10 16:54:52 1327 2

原创 2021-03-08 力扣_10 盛最多的水

力扣_10 盛最多的水给你 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器。示例 1:输入:[1,8,6,2,5,4,8,3,7]输出:49解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 49。示例 2:

2021-03-08 19:16:47 35

原创 2021-03-05 05 最长回文子串

05 最长回文子串给你一个字符串 s,找到 s 中最长的回文子串。示例 1:输入:s = “babad”输出:“bab”解释:“aba” 同样是符合题意的答案。示例 2:输入:s = “cbbd”输出:“bb”示例 3:输入:s = “a”输出:“a”示例 4:输入:s = “ac”输出:“a”提示:1 <= s.length <= 1000s 仅由数字和英文字母(大写和/或小写)组成来源:力扣(LeetCode)链接:https://leetcode-cn

2021-03-05 16:37:03 52 1

原创 2021-03-02 操作系统

操作系统第一章操作系统第二章操作系统第三章操作系统第五章操作系统第六章操作系统第七章操作系统第八章操作系统第九章操作系统第十章操作系统第十一章

2021-03-02 21:27:43 41

安卓开发之Android多线程编程.md

安卓开发之Android多线程编程.md

2021-10-29

安卓开发之网络编程技术.md

安卓开发之网络编程技术.md

2021-10-29

安卓开发之使用手机多媒体.md

安卓开发之使用手机多媒体.md

2021-10-29

计算机网络网络层.xmind

思维导图(些许知识点)

2021-03-02

计算机网络运输层.xmind

思维导图(些许知识点)

2021-03-02

数据链路层.xmind

思维导图(些许笔记)

2021-03-02

空空如也

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

TA关注的人

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