12 2024 档案
摘要:Spring 简介 一般来说,Spring指的是SpringFramework,它提供了很多功能,例如:控制反转(IOC)、依赖注入 (DI)、切面编程(AOP)、事务管理(TX) 主要 jar 包 org.springframework.core:Spring的核心工具包,其他包依赖此包 org.
阅读全文
摘要:MyBatis 简介 持久层框架,半自动映射,支持自定义SQL、高级映射、存储过程,免除了JDBC代码、参数设置、获取结果集的工 作,可以通过XML或注解方式配置、映射接口,以及实体类在数据库中的记录 Hibernate 和 Mybatis Hibernate 也是持久层框架,它是全自动映射,SQL
阅读全文
摘要:Java 锁 Java 中的锁是在多线程环境下,保证共享资源健康,线程安全的一种手段 线程操作某个共享资源之前,先对资源加一层锁,保证操作期间没有其他线程访问资源,操作完成后再释放锁 保持数据一致性的方法 事务管理:使用数据库事务来确保一组数据库操作要么全部成功提交,要么失败全部回滚 锁机制:使用锁
阅读全文
摘要:线程和进程 进程就是一个内存中运行的应用程序 线程是当前进程中的一个执行任务(控制单元),负责当前进程中程序的执行 区别与联系 根本区别:进程是操作系统资源分配的基本单位,线程是处理器任务调度和执行的基本单位 包含关系:一个进程可以有多个线程,至少有一个 内存分配:同一进程的线程共享本进程的地址空间
阅读全文
摘要:Collection 接口 Collection接口常用方法 boolean add(E e):在集合末尾添加元素 boolean remove(Object o):若集合中存在与o相同的元素,则删除,然后返回true void clear():清空集合内的所有元素 boolean contains
阅读全文
摘要:集合(一) 数组和集合的区别 数组是固定长度的数据结构,而集合是动态的数据结构 数组可以包含基本数据类型和对象,集合只能包含对象 数组只能存放同一类型的数据,而集合可以蹲房不同类型的 数组可以直接访问元素,集合需要通过迭代器或其他方法访问元素 集合的分类 根据上图,可以看出,Java中集合的核心就是
阅读全文
摘要:MarkDown的基本语法 MarkDown的标题语法 通过#进行创建标题,#的数量控制标题的级别 MarkDown的段落语法 通过空白行将一行或者多行文本进行分隔 MarkDown的强调语法 粗体 使用两个*或者两个_包裹 斜体 使用一个*或者一个_包裹 粗体和斜体 使用三个*或者三个_包裹 Ma
阅读全文
摘要:泛型 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。 理解 为了可以进一步理解泛型,我们先来看一个问题 需求: 编写一个程序,在ArrayList中添加三个对象,类中要有name、age属性,输出对象的name、age属性 首先,我们先用传统方法进行编写 package
阅读全文
摘要:42 点问题 题目描述: 众所周知在扑克牌中,有一个老掉牙的游戏叫做 24 点,选取4张牌进行加减乘除,看是否能得出 24 这个答案。 现在小蓝同学发明了一个新游戏,他从扑克牌中依次抽出6张牌,注意不是一次抽出,进行计算,看是否能够组成 42 点,满足输出 YES,反之输出 NO。 最先抽出来的牌作
阅读全文
摘要:差分法 在做题之前,先来学习一下差分法 差分法的应用主要是用于处理区间问题。当某一个数组要在很多不确定的区间,加上相同的一个数。我们如果每个都进行加法操作的话,那么复杂度 O(nm)是平方阶的,非常消耗时间。 如果我们采用差分法,将数组拆分,构造出一个新的拆分数组,通过对数组区间的端点进行加减操作,
阅读全文
摘要:CLZ银行问题 题目描述 CLZ 银行只有两个接待窗口,VIP 窗口和普通窗口,VIP用户进入 VIP 窗口排队,剩下的进入普通窗口排队。现有M 次操作,操作有四种类型,如下: IN name V:表示一名叫 name 的用户到 VIP 窗囗排队 OUT V:表示 VIP 窗口队头的用户离开排队 I
阅读全文
摘要:快递分拣 题目描述 蓝桥王国的每个快递都包含两个参数:1.快递单号 2.快递城市。 小李是蓝桥王国的一名快递员,每天的快递分拣让他苦不堪言。 于是他想要你帮他设计一个程序用于快递的分拣(将不同快递按城市信息分开) 输入描述 输入第一行包含一个整数 N,表示快递的个数。 接下来第2~ N +1行每行包
阅读全文
摘要:斐波那契数列 题目描述: 悲波那契数列(Fibonacci sequence)又称黄金分割数列,因数学家莱昂纳多·裴波那契(LeonardodaFibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”。指的是这样一个数列:0、1、1、2、3、5、8、13、21、34... 在数学上,斐波那契
阅读全文
摘要:数字三角形 问题描述 (图3.1-1)示出了一个数字三角形。 请编一个程序计算从顶至底的某处的一条路 径,使该路径所经过的数字的总和最大。 ●每一步可沿左斜线向下或右斜线向下走; ●1<三角形行数≤100; ●三角形中的数字为整数0,1,…99; 输入格式 文件中首先读到的是三角形的行数。 接下来描
阅读全文
摘要:N皇后问题(DFS-深度优先算法) 题目描述: 在 N×N 的方格棋盘放置了 N 个皇后,使得它们不相互攻击(即任意 22 个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成 45° 的斜线上。你的任务是,对于给定的 N,求出有多少种合法的放置方法。 输入描述: 输入中有一个正整数 N<=10
阅读全文
摘要:动态语言 动态语言,是指程序在运行时可以改变其结构(新函数可以引进,已有的函数可以被删除等结构上的变化)。如:JavaScript、Python就属于动态语言,而C、C++则不属于动态语言,从反射的角度说,Java属于半动态语言。 反射 反射就是在运行状态时,对任意一个类,都能知道类中的属性和方法,
阅读全文