- 博客(9)
- 收藏
- 关注
转载 为什么 select count(*) from t,在 InnoDB 引擎中比 MyISAM 慢?
统计一张表的总数量,是我们开发中常有的业务需求,通常情况下,我们都是使用 select count(*) from t SQL 语句来完成。随着业务数据的增加,你会发现这条语句执行的速度越来越慢,为什么它会变慢呢?为什么会变慢?想要得到答案就需要知道 MySQL 是如何统计总数量的,先说一个前提吧,count(*) 的具体实现是由存储引擎实现的,也就是说不同的存储引擎实现的方式不一样。标题:为什么select count( * ) from t,在 InnoDB 引擎中比 MyISAM 慢?也是高频面试题
2020-09-03 10:43:17
200
原创 多线程技术
多线程技术1、什么是进程,什么是线程 进程是一个应用程序(一个软件) 线程是一个进程中的执行场景/执行单元 一个进程可以同时启动多个线程 2、在java中,多线程共享堆内存和方法区内存的内容,但是栈内存独立,一个线程一个栈 假设启动10个线程,会有10个栈空间,每个栈和每个栈之间互不干扰,各自执行各自的,这就是多线程并发,可以提高效率3、在java中,实现线程有三种方式 (1)编写一个类,直接继承java.lang.Thread/*实现线程的第一种方式 编写一个
2020-08-27 16:55:40
138
原创 MySQL
MySQL基础知识笔记1、SQL、DB、DBMS分别是什么,他们之间的关系?DB: DataBase(数据库,数据库实际上在硬盘上以文件的形式存在)DBMS: DataBase Management System(数据库管理系统,常见的有:MySQL Oracle DB2 Sybase SqlServer)SQL: 结构化查询语言,是一门标准通用的语言。标准的sql适合于所有的数据库产品。关系:程序员负责编写SQL语句,DBMS负责执行sql语句,通过执行sql语句来操作DB当中的数据。2、
2020-08-24 18:21:44
249
原创 IO流(Input读 Output写)
IO流(Input读 Output写)1、java中IO流的四大首领java.io.InputStream 字节输入流 流分为:输出流 输入流java.io.OutputStream 字节输出流 字节流 字符流 字节流是万能的,字符流自能读取普通文本 java.io.Reader 字符输入流 带Stream结尾的都是字节流,带Reader,java.io.Writer 字符输出流 Write
2020-08-10 11:15:51
689
原创 JAVA集合基础知识
集合一.集合概述 1、集合式一个容器,可以用来容纳其它类型的数据 2、集合不能直接存储基本数据类型,集合也不能直接存储java对象,它存的是java对象的内存地址。如果存100,那也是java自动装箱Intiger之后再存的注意: 集合在java中本身是一个容器,是一个对象。 集合中任何时候存储的都是“引用”。二、集合的结构 在java中集合分为两大类,一类是单个方式存储元素:他们的超级父类接口:java.util.Collection; 一
2020-08-02 20:07:40
621
原创 找到休息日
某公司软件开发工程师孙工,作息规律为上三天班,休息一天,经常不确定休 息日是否周末,为此,请你开发一个程序,当孙工输入年及月,以日历方式显示对 应月份的休息日,用中括号进行标记.同时,统计出本月有几天休息,轮到周末休 息有几天.(注:首次休息日是2020年2月2日)要想解决这道题,首先我们要弄懂日历类是什么,该怎么用,然后才是去想判断的逻辑关系。本人也是刚学不久,理解的也不是很全面,在这里我只分享一下在做本题时的想法和思路。首先日历类我们不是new出来的,是通过Calendar c1 = Calend
2020-07-29 20:46:12
489
1
原创 Java跨平台运行原理
我们写的Java源代码会首先编译生成 .class字节码文件,然后生成的字节码文件会在JVM(Java虚拟机)上运行,而不同的平台,会有不同的Java虚拟机与之对应,所以就实现了Java跨平台运行。换一种说法,就是不同的平台上我安装了不同的JVM,而这些不同的JVM都有一个相同的作用,就是可以运行java源代码编译生成的.class字节码文件。要注意一点是,Java跨平台并不是因为JVM可以跨平台,而是不同的平台有不同的JVM虚拟机...
2020-07-26 20:19:47
175
原创 LeetCode第41题 缺失的正整数 难
给你一个未排序的整数数组,请你找出其中没有出现的最小正整数。示例 :[1,2,0] 输出 :3[3,4,-1,1] 输出:2[7,8,4,6] 输出:1要求: 算法时间复杂度为O(n),并且不能使用常数级别的额外空间解题思路:一个长度为n的数组,它缺失的最小正整数一定≤n+1,假设最极端的数组中存储的是123~n,那么缺失的也是n+1,如果前面也有缺失那他一定小于n+1;利用这个思想,我们可以对号入座,即将数字x(x要是小于数组长度的正整数)放在数组的x-1的位置上,即最理想的状态
2020-07-26 20:11:06
177
原创 冒泡排序与选择排序
冒泡排序法和选择排序法比较相似,但又有所区别。冒泡是相邻的两个比较,将最小的一步一步移到最左边,而选择排序是一眼先看过去哪个最小,将最小的移到最左边。举个例子,我们进入新班级,要进行排队做早操,我们先散乱的随意排好。冒泡排序就是相邻的两个人进行身高比较,高的就向后移,比完了再向后面的一个人比。。。通过每一个位置的人和后面相邻的比较,最高的一定就排到了最后的位置,循环重复此操纵,就完成了排序。代码如下: //冒泡排序算法 int[] nums = {61,312,11,4,2,32,12,11};
2020-07-26 13:35:08
260
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人