自定义博客皮肤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)
  • 收藏
  • 关注

原创 力扣数据结构(STL)

Sequence Containers:维持顺序的容器。(a). vector:动态数组,是我们最常使用的数据结构之一,用于 O(1) 的随机读取。因为大部分算法的时间复杂度都会大于 O(n),因此我们经常新建 vector 来存储各种数据或中间变量。因为在尾部增删的复杂度是 O(1),我们也可以把它当作 stack 来用。(b). list:双向链表,也可以当作 stack 和 queue 来使用。由于 LeetCode 的题目多用 Node 来表示链表,且链表不支持快速随机读取,因此我们很少用到这.

2021-12-10 17:57:48 950

原创 力扣位运算

x ^ 0s = xx ^ x = 0n & (n - 1) 可以去除 n 的位级表示中最低的那一位,例如对于二进制表示 11110100,减去 1 得到 11110011,这两个数按位与得到 11110000。n & (-n) 可以得到 n 的位级表示中最低的那一位,例如对于二进制表示 11110100,取负得到 00001100,这两个数按位与得到 00000100。给定两个十进制数字,求它们二进制表示的汉明距离(Hamming distance,即不同位的个数)。对两个数进行按

2021-11-17 23:07:36 136

原创 力扣dfs

DFS(深度优先搜索)深度优先搜索也可以用来检测环路:记录每个遍历过的节点的父节点,若一个节点被再次遍历且父节点不同,则说明有环。我们也可以用之后会讲到的拓扑排序判断是否有环路,若最后存在入度不为零的点,则说明有环。有时我们可能会需要对已经搜索过的节点进行标记,以防止在遍历时重复搜索某个节点,这种做法叫做状态记录或记忆化(memoization)。给定一个二维的 0-1 矩阵,其中 0 表示海洋,1 表示陆地。单独的或相邻的陆地可以形成岛屿,每个格子只与其上下左右四个格子相邻。求最大的岛屿面积。In

2021-11-15 20:13:11 702

原创 归并排序+快排+快速选择+桶排序

https://www.bilibili.com/video/BV1Pt4y197VZ/?spm_id_from=333.788.recommend_more_video.-1

2021-11-07 10:23:18 160

原创 力扣二分查找(搞不懂)

二分查找也常被称为二分法或者折半查找,每次查找时通过将待查找区间分成两部分并只取一部分继续查找,将查找的复杂度大大减少。对于一个长度为 O(n) 的数组,二分查找的时间复杂度为 O(log n)。二分查找也可以看作双指针的一种特殊情况,但我们一般会将二者区分。双指针类型的题,指针通常是一步一步移动的,而在二分查找里,指针每次移动半个区间长度。求开方给定一个非负整数,求它的开方,向下取整输入一个整数,输出一个整数我们可以把这道题想象成,给定一个非负整数 a,求 f (x) = x2 − a = 0

2021-11-04 08:01:39 63

原创 力扣玩转双指针

双指针主要用于遍历数组,两个指针指向不同的元素,从而协同完成任务。也可以延伸到多个数组的多个指针。若两个指针指向同一数组,遍历方向相同且不会相交,则也称为滑动窗口(两个指针包围的区域即为当前的窗口),经常用于区间搜索。若两个指针指向同一数组,但是遍历方向相反,则可以用来进行搜索,待搜索的数组往往是排好序的int x;int * p1 = &x; // 指针可以被修改,值也可以被修改const int * p2 = &x; // 指针可以被修改,值不可以被修改(const int)

2021-10-30 22:19:34 91

原创 力扣贪心算法

顾名思义,贪心算法或贪心思想采用贪心的策略,保证每次操作都是局部最优的,从而使最后得到的结果是全局最优的。举一个最简单的例子:小明和小王喜欢吃苹果,小明可以吃五个,小王可以吃三个。已知苹果园里有吃不完的苹果,求小明和小王一共最多吃多少个苹果。在这个例子中,我们可以选用的贪心策略为,每个人吃自己能吃的最多数量的苹果,这在每个人身上都是局部最优的。又因为全局结果是局部结果的简单求和,且局部结果互不相干,因此局部最优的策略也同样是全局最优的策略。有一群孩子和一堆饼干,每个孩子有一个饥饿度,每个饼干都

2021-10-27 21:31:52 134

原创 操作系统的四个特征

在计算机操作系统中,操作系统的并发性指计算机系统中“同时”运行着多个程序,这些程序宏观上看是同时运行着(我一边在听歌一边登着QQ一边打开浏览器写博客),而微观上看是交替运行的。操作系统就是伴随着“多道程序技术”而出现的。因此,操作系统和程序并发是一起诞生的。所以并发是操作系统最基本的特征。现在我们电脑的CPU很少有单核CPU(同一时刻只能执行一个程序,程序必须并发执行),一般都是多核的CPU(同一时刻可以执行多个程序,即程序可以并行地运行),CPU核心数的增加大大提高了我们计算机的性能。单核CPU在某一

2021-09-09 20:32:17 139

原创 基金知识自用

2021-07-17 16:41:17 58

原创 基金购买参考参数

β越大,表明基金相对市场整体的波动性越大。反之如果β<1,基金的波动性相对市场会比较低。至于高贝塔好还是低贝塔好?取决于你的投资风格。α越高,说明基金经理越牛。还有个辅助指标是R平方,用来辅助判断α和β的可信度有多高,R平方越高,说明α和β更可信,如果R平方是100%,说明α和β绝对靠谱,如果R平方是0,那么α和β也就没必要看了。衡量基金总体风险的指标是标准差,也就是基金每月的回报率相对于平均月回报率的偏差,标准差越大,基金波动越剧烈。两只基金一年下来收益率相同,都是10%,但是一个标准差是1

2021-07-14 09:40:24 169

原创 vue.js day01

2021-07-12 11:28:34 80

原创 前端框架BootStrap入门

框架:框架是一个半成品软件,开发人员可以在框架基础上进行开发,简化编码。好处:① 定义了许多CSS样式和js插件。开发者可以直接引用这些样式和插件。② 响应式布局:同一套页面可以兼容不同分辨率的设备。快速入门下载Bootstrap下载后有三个文件夹,将这三个文件夹复制到项目中创建html页面,引入必要的资源流体容器会随着页面窗口的大小变化而变化,其宽度始终占据整个屏幕的宽度。栅格系统在栅格系统中一行被分为12列 <div class="col-lg-10">c

2021-06-28 20:49:34 175

转载 springBoot中对于model层、dao层、service层、controller层的理解

springBoot作为一个轻量级的java开发框架,在许多的方面提出了相应的解决方案。一般来说基于springBoot的项目基本分为以下几个层次(在项目文件夹中体现为一个层次对应一个package)model层(entity层)Dao层(mapper层)service层(业务层)controller层(控制层)各层的作用MODEL层即数据库实体层,也被称为entity层,pojo层,存放的是实体类,属性值与数据库中的属性值保持一致。 实现set和get方法。一般数据库一张表对应一个实体类

2021-06-27 19:50:54 1862

原创 java访问符和修饰符

2021-06-23 15:37:48 60

原创 java数组初始化

2021-06-23 15:27:19 52

原创 java数据类型和类型转换

2021-06-23 15:04:19 56

原创 Hello World程序

2021-06-23 11:03:37 67

原创 Java跨平台原理

2021-06-23 09:11:10 59

原创 JDK JRE JVM SDK

2021-06-23 09:06:51 82

原创 Java的三个技术平台

Java的三个技术平台

2021-06-23 08:59:11 84

原创 第七章 异常

学习路线

2021-04-27 08:42:28 115

原创 第六章 抽象类和接口

学习路线抽象类和抽象方法必须使用“abstract”关键字来修饰。定义抽象类和抽象方法的规则如下:abstract关键字放在class前,指明该类是抽象类; abstract关键字放在方法的返回类型前,指明该方法是抽象方法,抽象方法没有方法体; 抽象类不能被实例化即无法使用new关键字直接创建抽象类的实例,即使抽象类中不包含抽象方法也不行; 一个抽象类中可以含有多个抽象方法,也可以含有已实现的方法; 抽象类可以包含成员变量以及构造方法,但不能通过构造方法创建实例,可在子类创建..

2021-04-23 09:19:21 405

原创 第五章 类之间的关系

学习路线类与类之间存在六种关系:继承(添加自己的特有功能。继承也称为泛化,表现的是一种共性与特性的关系) :继承与多态是面向对象的特征之一,也是实现软件复用的重要手段。实现(类实现一个或多个接口)‘依赖(方法中操作另外一个类的对象)关联(使用类作为成员变量) 聚合:组成:Java中的继承具有单一继承的特点 每个子类只有一个直接父类 一个父类可以有多个子类。继承通过使用“extends”关键字来实现示例:public class SubClass ext.

2021-04-21 16:20:43 678

原创 第四章 核心类

将字符串的值转换为基本类型的值有两种方式:int num1=new Integer("10");int num2=Integer.parseInt("123");基本类型的值转换成字符串有三种方式:String s1 = "" + 23;String s2 = Integer.toString(100);String s3 = String.valueOf(66);基本类型与其对应封装类之间能够自动进行转换,其本质是Java的自动装箱和拆箱过程。 装箱是指将基本类型数据值转换成.

2021-04-17 11:41:07 120

原创 第三章 面向对象基础

https://blog.csdn.net/llwszjj/article/details/36451877为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。Java语言全面支持动态绑定,而C++语言只对虚函数使用动态绑定。(C++动态绑定:通过虚表实现动态绑定)类和类之间具有一定的结构关系。 继承:一般~具体 关联:整体~局部面向对象的特征:唯一性(每个对象都是唯一的,自身具有唯一的标识...

2021-04-11 11:27:45 81

原创 第二章 Java语言基础

常见字符集:ASCII字符集 (1个字节是8位,共128个字符,字符值从0-127 由于英文字母仅有26个,再加上常用符号,总大小也不会超过128个, 例如, 字符“a”被编码位0x61, 字符“b”被编码位0x62等。)GB2312字符集 Unicode字符集...

2021-04-10 10:40:19 55

原创 第一章 Java概述(考后总结)

任何语言的开发都从环境入手,不同的设计语言有不同的编译器。Java是纯面向对象的编程语言,Java是区分大小写的编程语言,所有代码都在类体之内程序必须要有main()方法才能运行,main()方法是整个程序的入口公共类的类名与Java文件名必须相同JAVA语言优势:资源免费、跨平台、健壮、安全、高性能、简单、面向对象、动态性、多线程Java体系架构分3个平台:Java SE标准版 Java EE企业版 Java ME微型版名词解释:JDK :Java开发工具包JRE:Java..

2021-04-09 16:59:46 76

原创 买基金注意事项

蓝筹精选可投资:A股、港股(蓝筹更优)中小盘:A股护城河:核心竞争力(京东:物流)自下而上:企业->行业集中持股:鸡蛋放在投一个篮子里新手不要选单一主题的基金,不要购买新基金1.基金长期持有(短期不用的)2.支付宝平台3.同等基金行业和主题,选优秀(基金管理规模)的基金公司4.选择优秀的基金经理(年限、历史业绩(控制回撤)、不怎么跳槽、规模是收益的天敌(50-100亿))5.多元化6.买旧不买新1.基金经理更换时卖出基金2.基金经理风格漂移3..

2021-04-03 12:22:02 226

原创 位运算(力扣)

补码:先按正数转换,然后取反加1。要将十进制的-10用二进制表示,先将10用二进制表示:0000 0000 0000 1010取反:1111 1111 1111 0101加1:1111 1111 1111 0110所以,-10的二进制表示就是:1111 1111 1111 0110按位与、按位或、按位异或(一样为0)(任何数与0异或,结果都是其本身)、取反利用异或实现两数交换a = a ^ b b = b ^ a a = a ^ b;例题如下class...

2021-03-25 18:52:39 171

原创 深度优先搜索

递归好难哦QAQ题目描述 给定一个二维的 0-1 矩阵,其中 0 表示海洋,1 表示陆地。单独的或相邻的陆地可以形成岛屿,每个格子只与其上下左右四个格子相邻。求最大的岛屿面积。对于四个方向的遍历,可以创造一个数组 [-1, 0, 1, 0, -1],每相 邻两位即为上下左右四个方向之一。方法一:一种是先判定是否越界,只有在合法的情况下才进行下一步搜索(即判断放在调用递归函数前);vector<int> direction{-1, 0, 1, 0, -1};// 主

2021-03-22 16:45:43 143

原创 贪心算法及简单例题

本文通过leedcode为蓝桥杯省赛做准备贪心算法:保证每次操作都是局部最优的,从而使最后得到的结果是全局最优的例题:1.有一群孩子和一堆饼干,每个孩子有一个饥饿度,每个饼干都有一个大小。每个孩子只能吃最多一个饼干,且只有饼干的大小大于孩子的饥饿度时,这个孩子才能吃饱。求解最多有多少孩子可以吃饱。 贪心策略:给剩余孩子里最小饥饿度的孩子分配最小的能饱腹的饼干。 int findContentChildren(vector<int>& children, vecto

2021-03-19 17:59:29 314

原创 C语言培训班网课day02

一步编译:gcc -o hello.exe(windows .exe)hello.c预处理:宏定义展开、头文件展开、条件编译(选什么编译库、当前系统是多少位的)、把注释删除,此时不检查语法hello.i编译:检查语法,C语言转为汇编语言(命令)hello.s汇编:生成目标文件 hello.o链接:将C语言依赖库链接到程序中hello.exe程序执行过程存硬盘(外存) 加载到内存(MEM):代码区、数据区、栈区、堆区内存和CPU交互...

2021-03-19 00:17:49 91

原创 蓝桥省赛真题

#include<bits/stdc++.h>using namespace std;typedef long long ll;int main(){ ll f1,f2,f3; ll tmp; f1=f2=f3=1; for(int i=4;i<=20190324;i++) { tmp=(f1+f2+f3)%10000;//这个题只看数的最后四位就可以 f1=f2; f2=f3; ...

2021-03-18 22:31:40 78

原创 java网课day01

java学习CPU 内存(主存) 存储设备(磁盘、光盘、磁带)输入设备 输出设备 通信设备(网卡、调制解调器联网)总线(数据传输)连接所有设备在个人计算机上,总线搭建在主板上,主板是一个连接计算机各部分的电路板冯诺依曼体系:输入、输出、存储器(内存、硬盘(持久))、CPU(运算器、控制器)CPU:主频(Ghz)HQ:标压大数据:16GB起 买个内存条内存(RAM)硬盘->内存->CPU内存读取数据的速度比硬盘快十倍换固态硬盘、混合硬盘看像素密度.

2021-03-17 22:08:01 43

原创 力扣数组刷题系列

leedcodefor(vector<int>::iteratori=nums.begin();i!=nums.end();i++)if(((1+(int)log10(*i))&1)==0)res++;unordered_map<int,int>P;for(inti=0;i<m;++i)//构造P序列P.insert({i+1...

2021-03-17 22:06:52 97

原创 C++起步

重学C++ 1.计算机系统简介硬件组成 主机:CPU 内存计算机指令系统:硬件能识别的01指令的集合,是硬件与软件的主要界面计算机软件:应用软件、系统软件、中间件软件=程序+文档2.计算机语言和程序设计方法的发展历史机器语言(简单的操作、需要把数据放到显示器端口(需要知道地址))、汇编语言(助记符、抽象层次低、需要考虑机器细节)、高级语言(屏蔽机器细节)对面向过程的了解:步骤分解3.面向对象的基本概念抽象:分类依据的原则类:抽象出同一类对象的共同属性和行为..

2021-03-17 11:11:21 181

原创 C起步

gcc -v C语言编译,我的电脑没有这个环境只有C C++有指针,内存泄漏,外挂C语言写大型服务器 开发速度慢,不是最先进的嵌入式:智能控制网络安全 无人驾驶(程序入侵)不会封装函数dll动态库文件 对函数进行封装 执行速度快 POSIXC语言:写操作系统和驱动程序,这俩只能通过C语言编写C语言:.c C++:.cppauto:定义局部变量 U低压 K超频register:直接定义在寄存器中std标准库io输入输出<>导入系统文件“ ”自定义..

2021-03-16 22:49:05 69

空空如也

空空如也

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

TA关注的人

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