自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(70)
  • 收藏
  • 关注

原创 2024/4/19 2024/4/16 MySQL存储引擎

InnoDB和MyISAM在数据存储上也有很大的区别,InnoDB是将表数据和索引数据存放在同一个文件的,而MyISAM是将表数据和索引数据分开存储的,所以,InnoDB引擎B+树索引中的叶子结点存储的是索引和数据,MyISAM引擎B+树索引中的叶子结点存储的是索引和数据地址。char 是固定长度的字符串类型,它在数据库中占用固定的存储空间,无论实际存储的数据长度是多少,都会占用定义时指定的固定长度,如果实际存储的字符长度小于定义的长度,系统会自动填充为空格。MySQL缓存是不能替代redis的。

2024-04-19 14:37:35 342

原创 2024/4/19 2024/4/16 MySQL语法面试题

count(主键)是对主键值进行遍历,比count(1)多了遍历一个主键值,所以count(1)效果更好。delete是对数据的逻辑删除,drop是删除整表,truncate是删除表中所有数据。但是非主键可能有null值,所以可能结果会小于count(主键)的结果。count(*)相当于count(0),与count(1)的效率相同。count(主键)和 count(非主键)结果可能不同,也可能相同。内连接返回两个表匹配的行,外连接返回两个表匹配和不匹配的行。where是对连接之后的表的过滤条件。

2024-04-19 12:04:17 176

原创 2024/4/19 MySQL索引结构

如果查询语句的查询条件用了二级索引,但是查询的数据不是主键值,也不是二级索引值,这时在二级索引找到主键后,就需要回表才能查到数据,需要扫描两次B+树。在索引页中主要记录的是主键与页号,假设是主键id类型是bigint,那就是8字节,页号固定为4字节,那么索引页中一条数据也就是12byte,那么一个索引页可以存储 15 * 1024 / 12 ≈。叶子节点中存放的是真正的行数据,这个影响的因素就会多很多,比如字段的类型,字段的数量。我比较常用的是B+树索引,因为它是InnoDB引擎默认使用的索引类型,

2024-04-19 11:07:40 810

原创 2024/4/16 MySQL存储引擎

MySQL在更新数据的时候,MySQL为了保证事务的隔离性,是需要加锁的,而Redis更新操作都是不需要加锁的,还有MySQL为了保证事务的持久性,还需要刷盘redolog日志和binlog日志,Redis可以选择不持久化数据。char 是固定长度的字符串类型,它在数据库中占用固定的存储空间,无论实际存储的数据长度是多少,都会占用定义时指定的固定长度,如果实际存储的字符串长度小于定义的长度,系统会自动用空格填充。会基于查询成本的考虑,会判断每个索引的执行成本,从中选择查询成本最小的执行计划。

2024-04-16 17:30:55 534

原创 2024/4/16 MySQL语法面试题

drop 是删除表结构和表中所有的数据,truncate 是只删除表中所有的记录,表结构不会被删除,drop 和 truncate 删除的数据都是不可以回滚的,并且删除表会立即释放磁盘空间。而且,delete 删除数据只是给数据打上删除标签,目的是为了空间复用,所以delete删除数据后,磁盘大小不会缩减。count(主键) 是对主键进行遍历,相比于count(*)和count(1)多了一步读取主键值。内连接是只返回两个表匹配的数据行,外连接可以返回两个表匹配和不匹配的数据行。

2024-04-16 09:53:27 185

原创 leetcode 12 整数转罗马数字 leetcode 13 罗马数字转整数

leetcode

2022-09-18 01:00:30 134 1

原创 leetcode 8 字符串转化整数

leetcode

2022-09-18 00:00:26 153

原创 leetcode 7 整数反转

Leetcode

2022-09-17 22:34:48 127

原创 数据结构复习

基础知识数据结构的三要素: 逻辑结构、物理结构、数据的运算逻辑结构:集合、线性结构、树形结构、图形或网状型结构物理结构(存储结构):顺序存储、链式存储、索引存储、散列存储数据的运算:施加在数据上的运算包括运算的定义和实现。运算的定义是针对逻辑结构的,指出运算的功能;运算的实现是针对存储结构的,指出运算的具体操作步骤。集合:结构中的数据元素之间除“同属一个集合”外,别无关系。线性关系:结构中的数据元素之间只存在一对一的关系。树形结构:结构中的数据元素存在一对多的关系。图状或网状结构:结构中

2022-07-24 14:11:25 278

原创 JDK的安装、以及环境变量的设置

JDK的安装

2022-06-01 00:32:32 97

原创 考研复试面试四选二内容

抖动产生的原因及解决方法抖动是指页面置换过程中出现的频繁缺页现象。主要是由于有些进程频繁访问的页面数目高于可用的物理页帧数。解决方法有:①局部置换策略:就是当缺页率很高的时候为该进程分配若干物理块,当缺页率低的时候适当的减少分配的物理块。②引入工作集算法:基于局部性原理,工作集使用最近访问过的页面来确定工作集。一般来说只要分配给进程的物理块数大于工作集就可以。DBMS 的功能① 数据库定义功能:提供数据描述语言,定义数据库的三级结构及其相互之间的映像,定义数据库的完整性、安全性控制等约束。②

2022-03-07 08:17:39 2396

转载 Java基础:函数式接口

函数式接口的介绍1. 如果一个接口中,只声明了一个抽象方法,则此接口就称为函数式接口。 我们可以在一个接口上使用 @FunctionalInterface 注解, 这样做可以检查它是否是一个函数式接口。 2.java内置的4大核心函数式接口 消费型接口 Consumer<T> void accept(T t) 供给型接口 Supplier<T> T get() 函数型接口 Function<T,R>

2021-06-24 18:26:09 80

原创 Java基础:Optional类和lambda表达式

Optional类:为了在程序中避免出现空指针异常而创建的。常用的方法:ofNullable(T t)orElse(T t)Optional.of(T t) : 创建一个 Optional 实例,t必须非空;Optional.empty() : 创建一个空的 Optional 实例Optional.ofNullable(T t):t可以为nullOptional.of(对象):对象不能为空 public void test1(){ Girl girl = new

2021-06-24 18:11:46 693 1

原创 Java基础:反射

反射的概述Reflection是被视为动态语言的关键,反射机制允许程序在执行期间,借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性和方法。加载完类后,产生一个class类型的对象,包含完整的类的结果信息。这个对象就像一面镜子,透过这个镜子看到类的结构,所以,我们形象的称之为:反射动态语言:Object-C,C#,JavaScript,PHP,Pyehon,静态语言:Java,C,C++Java反射机制提供的功能: 1.运行时判断任意

2021-06-24 17:13:26 86

原创 Java基础:网络编程

网络编程的概述计算机网络:将各个网络连接起来网络编程的目的:直接或间接地通过网络协议与其他计算机实现数据交换,进行通讯通信双方地址:1.IP 2.端口号 一定的规则: 1.OSI模型 2.TCP/IP模型Ip地址:唯一表示一台主机Java中使用InetAddress类代表IPIPV4 和 IPV6 IPV4 : 四个字节组成 IPV6: 十六个字节组成域名:www.baidu.com

2021-06-23 21:59:57 71

原创 Java基础:I/O流

File的构造器1.File file = new File("hello.txt");2.File file2 = new File(parent路径,child路径);例如:new File("Z:\\code_file","Idea_2019_3.5");3.File file3 = new File(file2,"hello.txt");File类的常用方法File file = new File("hello.txt");//getAbsolutePath():获取绝对路径f

2021-06-23 21:45:09 78

原创 Java基础:泛型

泛型为什么要使用泛型?防止了,在类型转换时发生类型转换异常的错误。泛型的使用//包装类的泛型使用ArrayList<Integer> list = new ArrayList<>();通配符在泛型中的使用 //通配符的使用 List<Object> list1 = null; List<String> list2 = null; //通配符:? //List<

2021-06-23 19:31:54 73

原创 Java基础:集合

数组数组的特点1、一旦初始化后,其长度就确定了。2、一旦定义好数组后,其元素的类型也就确定了。我们就只能操作指定类型的数据了。—>比如:String[] arr ; int[] arr1;数组的缺点1、一旦建立,长度就不可更改2、数组中提供的方法非常有限,对于添加、删除、插入数据等操作,非常不便。3、获取数组中实际元素的个数的需求,数组没有现成的属性或方法可用。4、数组存储数据的特点:有序、可重复,对于无序、不可重复的需求,不能满足。集合框架 | --

2021-05-24 13:29:13 74

转载 Java基础:注解

注解的说明1、Annotation 其实就是代码里的特殊标记, 这些标记可以在编译, 类加载, 运行时被读取, 并执行相应的处理。通过使用 Annotation,程序员可以在不改变原有逻辑的情况下, 在源文件中嵌入一些补充信息。2、在JavaSE中,注解的使用目的比较简单,例如标记过时的功能,忽略警告等。在JavaEE/Android中注解占据了更重要的角色,例如用来配置应用程序的任何切面,代替JavaEE旧版中所遗留的繁冗代码和XML配置等。3、Annocation的使用示例示例一:生成文档相关的

2021-05-19 20:47:02 78

原创 Java基础:枚举类

以前的枚举类class Season{ private final String seasonName; private final String seasonDesc; private Season(String seasonName,String seasonDesc){ this.seasonName = seasonName; this.seasonDesc = seasonDesc; } public static fi

2021-05-19 20:09:45 68

转载 Java基础: System、Math、BigInteger、BigDecimal

System String javaVersion = System.getProperty("java.version"); System.out.println("java的version:" + javaVersion); String javaHome = System.getProperty("java.home"); System.out.println("java的home:" + javaHome); String osN

2021-05-19 19:58:00 72

原创 Java基础:比较器

自然排序class day21_22 implements Comparable { private String name; private double price; public day21_22() { } public String getName() { return name; } public void setName(String name) { this.name = name; }

2021-05-19 19:48:32 65

原创 Java基础:时间类的使用

时间类Date类 /* System.currentTimeMillis():返回当前时间与1970年1月1日0时0分0秒之间以毫秒为单位的时间差。称为时间戳 */ System.out.println(System.currentTimeMillis()); /* Date类 */ //java.util.Date Date utildate = new Date(); Date utildate2

2021-05-19 19:46:19 240

原创 Java基础:String类的使用

对于String的说明 1.String类:声明为final的,不可被继承的 2.String实现了Serializable接口,表示字符串是支持序列化的 实现了Comparable接口,表示可以比较大小 3.String内部定义了final char[] value用来存储字符信息 4.String:代表不可变的字符序列。简称:不可变性 重新赋值时,只是改变了地址值,有一个新的数值 ⭐5.通过字面量的方式直接赋值,数据放在常量区内。 ⭐

2021-05-19 18:22:21 106

原创 Java基础:多线程

多线程的创建方式(4种方法)1. 继承Thread类//main public static void main(String[] args) { //多线程的创建方式 1 : extends Thread MyThread1 myThread1 = new MyThread1(); myThread1.start(); }//线程public class MyThread1 extends Thread{ @Override

2021-05-19 18:02:52 67

原创 Java面向对象

面向对象的内容框架1.类和类的成员:属性、方法、构造器、代码块、内部类2.面向对象的三大特征:封装性、继承性、多态性3.其他关键字:this、super、static、abstract、interface、import等什么是面向对象?面向过程(POP)与面向对象(OOP) 两者都是一种思想,面向对象是相对于过程而言的。 面向过程,强调的是功能行为,以函数为最小单位,考虑怎么做。 面向对象,将功能封装进对象,强调具备了功能的对象,以类/对象为最小单位,考虑谁来做。类和类的成员类(cl

2021-05-14 13:50:45 175 1

原创 5(栈的应用)迷宫求解

#include<stdio.h>#include<stdlib.h>#include<string.h>#define Max 100typedef struct { int row, col; int data; int di;//方向 1右 2下 3左 4上 int printFeet;//是否走过 0没走过 1走}MazeNode;typedef struct { MazeNode data[Max]; int top;}Sta

2021-04-30 15:41:52 127 1

原创 5 (栈的应用)行编辑系统

#include<stdio.h>#include<stdlib.h>#include<string.h>typedef struct { char data[100]; int top = -1;}Stack;bool isEmpty(Stack s) { if (s.top == -1) return true; return false;}bool overflow(Stack s) { if (s.top == 99) return t

2021-04-27 10:56:24 122

原创 5 (栈的应用)括号匹配

#include<stdio.h>#include<stdlib.h>#include<string.h>typedef struct { char data[100]; int top = -1;}Stack;bool isEmpty(Stack s) { if (s.top == -1) return true; return false;}bool overflow(Stack s) { if (s.top == 99) return t

2021-04-27 10:26:37 59

原创 0 简答题

一 顺序表和链表的比较1、存取(读写)方式:顺序表可以顺序存取,也可以随机存取,链表只能从表头顺序存取元素。例如在第i个位置上执行存或取的操作,顺序表仅需一次访问,而链表则需从表头开始依次访问i次。2、逻辑结构与物理站构:采用顺序存储时,逻辑上相邻的元素,对应的物理存储位置也相邻。而采用链式存储时,逻辑上相邻的元素,物理存储位置不一定相邻,对应的逻辑关系是通过指针链接来表示的。3、查找、插入和删除操作:对于按值查找,顺序表无序时,两者的时间复杂度均为 O(n)∶ 顺序表有序时,可采用折半查找,此时的

2021-04-27 09:59:59 142

原创 5 栈

栈(stack):是只允许在一段进行插入或删除操作的线性表。首先,栈是一种线性表,但限定这种线性表只能在某一段进行插入和删除操作。栈顶(Top):线性表允许进行插入删除的那一段。栈底(Bottom):固定的,不进行插入和删除的另一端。后进先出(Last In First Out,LIFO)卡特兰数(Catalan)栈数据结构typedef struct { char elem[stack_size]; int top;}seqStack;初始化void initStack(seq

2021-04-27 09:59:43 54

原创 5 *进制转换为*进制(c语言实现)

前言进制转换一共有12种,需要手写的进制转换只有6种,即转为10进制和10进制转为进制,其他6种可以用前面6种转换而来。所以,我们应该熟练掌握前6种进制转换。代码实现#include<stdio.h>#include<stdlib.h>#include<string.h>int conversion2to10(int BIN[], int BINlen);char *conversion2to16(int BIN[], int BINlen, int

2021-04-27 09:58:43 294

原创 1 Java基础

一、基本数据类型整数类型浮点类型字符类型布尔类型boolean b = true;boolean b2 = false;位运算符1、“按位与”运算(&)如果两个操作数对应位都是1,则结果才是1,否则为0.2、“按位或”运算(|)如果两个操作数对应位都是0,则结果位才是0,否则为1.3、“按位非”运算(~)将二进制数中的1全部修改为0,0全部修改为1。4、“按位异或”运算(^)当两个操作数的二进制表示相投(同时为0或同时为1)时,结果为0,否则为1。5、移位

2021-04-24 15:03:49 77

转载 0 Java基础笔记整理(0 ->面向对象)

命名规范包名:都是小写 xxxuuyyy类名、接口名:首字母大写 XjflsjYflajf变量名、方法名:第一个字母小写、第二个单词大写 xxxxYyyyy常量名:所有字母都大写 XXX_YYY基本数据类型之间的运算/*自动类型提升:byte 、char 、short < int < long < float < double范围小的可以直接转换为大的*/int a = 1;byte b = 2;int c = a + b;//强制类型转换double

2021-04-24 14:22:11 97

原创 6 队列

顺序队列采用数组存储的方式,规定只能从一段插入,从另一段删除元素。特点:会出现“假溢出”的现象。数据结构及操作:typedef struct { int data[MaxSize]; int rear, front;}SqQueue;bool IsEmpty(SqQueue q) { if (q.rear == q.front) return true; return false;}bool EnQueue(SqQueue &q, int x) { if (

2021-04-24 11:16:45 94

转载 0 C语言程序设计基础

枚举#define MON 1#define TUE 2#define WED 3#define THU 4#define FRI 5#define SAT 6#define SUN 7这个看起来代码量就比较多,接下来我们看看使用枚举的方式:/*注意:第一个枚举成员的默认值为整型的 0,后续枚举成员的值在前一个成员上加 1。我们在这个实例中把第一个枚举成员的值定义为 1,第二个就为 2,以此类推。*/enum DAY{ MON=1, TUE, WED, TH

2021-04-21 17:12:29 109

原创 1 王道习题:第一章

//1.bool DelMinElem(SqList &L,int &e) { if (L.length == 0) return false; int min = 0; for(int i = 1; i < L.length; i++) { if (L.data[i] < L.data[min]) min = i; } e = L.data[min]; L.data[min] = L.data[L.length - 1]; L.length--; .

2021-04-21 13:35:52 533

原创 7 串

定义串的逻辑结构和线性表极为相似,区别仅在于串的数据对象约束为字符集。然而,串的基本操作和线性表有很大差别。在线性表的基本操作中,大多以 “单个元素” 作为操作对象,例如,在线性表中查找某个元素,求取某个元素,在某个位置上插入一个元素或删除一个元素等;而在串的基本操作中,通常以 “串的整体” 作为操作对象,例如,在串中查找某个子串,求取一个子串,在串的某个位置上插入一个子串,以及删除一个子串等。数据结构顺序存储结构#define Maxlen 255 //串的长度//顺序存储结构typ

2021-04-20 15:50:44 196

原创 4 其他链表

循环单链表#include<stdio.h>#include<stdlib.h>//循环单链表typedef struct Lnode { int data; struct Lnode *next;}Lnode,*Linklist;void init(Linklist &l) { l = (Lnode*)malloc(sizeof(Lnode)); l->next = l;}void Insert(Linklist &l, int

2021-04-19 15:52:45 43

原创 3 单链表

单链表需要注意的知识点引入头结点的优点:① 由于第一个数据结点的位置被存放在头结点的指针域中,因此在链表的第一个位置上的操作和在表的其他位置上的操作一致,无须进行特殊处理。② 无论链表是否为空,其头指针都指向头结点的非空指针(空表中头结点的指针域为空),因此空表和非空表的处理也就得到了统一。简而言之就是确保了操作的一致性链式存储线性表时,不需要使用地址连续的存储单元,即不要求逻辑上相邻的元素在物理位置上也相邻,它通过" 链 "建立起数据元素之间的逻辑关系。优点1 插入和删除操作不需要移动元素,

2021-04-19 15:48:59 108

A股日内动量效应_半小时 涨跌幅间的规律_发布.ipynb

A股日内动量效应_半小时 涨跌幅间的规律_发布.ipynb

2023-03-14

空空如也

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

TA关注的人

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