自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(87)
  • 资源 (1)
  • 收藏
  • 关注

原创 动态规划小结(Java)

动态规划(Dynamic programming)动态规划主要针对最优化问题,他的决策不是线性的而是全面考虑各种不同的情况,分别进行决策,最后通过多阶段决策逐步找出问题的最终解。当各个阶段采取决策后,会不断决策出新的数据,直到找到最优解。每次决策依赖于当前的状态,又随机引起状态的转移。所以,这种多阶段最优化决策问题的过程称为动态规划。一、适用动态规划策略问题的特征:1)最优子结构性质:一...

2019-03-07 13:34:02 270

原创 分治算法小结(Java版)

分治算法(divide and conquer)算法设计思想:分(divide):递归解决较小的问题(基本情况除外)。治(conquer):从子问题的解构建原问题的解。适合用分治法的问题:当求解一个输入规模非常大的问题时,用暴力法效率一般得不到保证,如果问题能满足以下几个条件,就可以采用分治法提高解决效率:能将这n个数据分解成k个不同的子集合,且得到k个子集合是可以独立求解的子集问题...

2019-03-05 19:51:51 1304

原创 贪婪算法小结(Java版)

贪婪算法:在每一个阶段,可以认为所做出的的决定是最好的,而不考虑将来的后果。通常,这意味着选择的是某个局部最优。当算法终止时,我们希望局部最优等于全局最优,如果是这样的话,这个算法就是正确的,否则我们将得到一个次最优解。若我们得到的局部最优等于全局最优,则称这个问题是可绝对贪婪问题,否则它是一个近似贪婪问题,在不要求最优解时,我们可以使用此算法得到次最优解。贪心法的设计思路:1.创建数学模...

2019-03-02 20:26:24 1323

原创 针对jupyter启动内核报错“ImportError: DLL load failed while importing win32api: 找不到指定的程序“的解决办法

针对jupyter启动内核报错"ImportError: DLL load failed while importing win32api: 找不到指定的程序"的解决办法[I 11:40:22.127 NotebookApp] Kernel started: bd8cabbb-5ced-4f2b-aa23-4af5c67b7886, name: pytorch7Traceback (most recent call last): File "D:\software_installed\anacond

2021-07-23 11:49:08 1529

原创 Spring文档2.9

2.9 Annotation-based Container Configuration 基于注解的容器配置Are annotations better than XML for configuring Spring?The introduction of annotation-based configuration raised the question of whether this ap...

2020-03-26 14:07:19 591

原创 Spring官方文档(中文版!!!)

本文档是对spring官方文档的解读,原文档参见Spring官方文档,本人只是翻译和整理,由于水平有限,部分解读可能不正确,欢迎提出更好的意见和建议或者与我一起完成本次挑战!网页版移步我的临时网页Git传送门1 Spring综述1.1 jdk环境依赖从Spring Framework 5.1开始,Spring需要JDK 8+ (Java SE 8+),并提供对JDK 11 LTS的开箱...

2020-03-18 19:10:43 89017 17

原创 Java基础之反射

反射将类的各个组成部分封装成对象优点:可以在程序运行中操作这些对象解耦,提高程序扩展性1类对象的三种获取方式:Class.forName():将字节码文件加载进内存,多用于配置文件类名.class 类已经被加载,多用于参数传递对象.getClass: 对象已经创建,多用于对象获取字节码public class User { private String na...

2020-03-17 23:01:21 191

原创 第六章 类变量解析

类变量解析Java类变量解析的原理计算机基础——偏移量与内存对齐Java类与字段的对齐与补白Java字段的继承机制使用HSDB查看运行时的Java类结构类变量解析在ClassFileParser::parseClassFile()函数中,解析完常量池、父类和接口后,接着编调用parse_fields()函数解析类变量信息:// Fields (offsets are fil...

2019-10-05 11:33:08 306

原创 第五章 常量池解析

常量池解析Java字节码常量池的内存分配链路oop-klass模型常量池的解析原理在字节码文件中,常量池的字节码流所在的块区紧跟在魔数和版本号之后,因此JVM在解析完魔数与版本号后就开始解析常量池。JVM解析Java类字节码文件的接口:ClassFileParser::parseClassFile(),总体步骤如下:解析魔数–>解析版本号–>解析常量池–>解析父类–...

2019-10-03 18:50:23 783 1

原创 Java字节码实战

Java字节码实战Java字节码的二进制格式字节码的魔数与版本字节码的常量池字节码的类继承字节码的字段存储字节码的方法格式想要深刻理解JVM执行引擎的机制,就必须对JVM内部的数据结构有深入了解,而要了解JVM内部的数据结构就必须要了解Java字节码。字节码初探测试用例:public class Test { public int a = 3; stat...

2019-10-01 21:35:32 405

原创 垃圾回收机制简介

垃圾回收如何判定对象为垃圾对象引用计数法可达性分析法如何回收回收策略标记-清楚算法复制算法标记-整理算法分代收集算法垃圾回收器SerialParnewCMSG1如何判定垃圾对象引用计数法:简单,速度慢每个对象都含有一个引用计数器,当有引用连接到对象时,引用计数器+1,当引用离开作用域或被置为null时-1.当发现某个对象的引用...

2019-09-28 15:51:18 277

原创 Java执行引擎工作原理:方法调用

Java执行引擎工作原理:方法调用方法调用如何实现函数指针和指针函数CallStub源码详解Git链接(有HotSpot源码)1 方法调用如何实现计算机核心三大功能:方法调用、取指、运算1.1 真实机器如何实现方法调用参数入栈。有几个参数就把几个参数入栈,此时入的是调用者自己的栈代码指针(eip)入栈。以便物理机器执行完调用函数之后返回继续执行原指令调用函数的栈基址入...

2019-09-28 15:27:18 908 1

原创 引子

1 编程语言兼容底层系统的实现方式通过编译器实现兼容涉及到系统调用的特定API的程序需要修改通过中间语言实现兼容程序被编译后,生成中间语言(ML),中间语言指令由虚拟机负责解释和运行。中间语言的兼容性由虚拟机负责完成。2 常见汇编命令数据传送指令:在寄存器与内存,寄存器与输入输出端口之间传送数据。movl 1,%eax //将自然数1传送到eax寄存器pop...

2019-09-28 15:22:07 96

原创 JVM前奏

JVM内存模型运行时数据区线程独占区虚拟机栈本地方法栈程序计数器线程共享区方法区(存储运行时常量池、已被虚拟机加载的类信息、常量、静态变量等数据Java堆(存储对象实例)程序计数器是一块较小的内存空间,可以看做是当前线程所执行的字节码的行号指示器程序计数器处于线程独占区如果线程执行的是Java方法,这个计数器记录的是正在执行的虚拟机字节码指令的地址。...

2019-09-25 22:59:02 84

原创 网络安全

网络安全网络攻击与防御的基本内容入侵检测的基本概念与方法防火墙的概念及应用1 网络空间安全1.1 网络空间安全理论体系基础理论体系网络空间理论研究网络空间安全体系结构大数据安全对抗博弈密码学研究对称加密公钥加密密码分析量子密码和新型密码技术理论体系系统安全理论芯片与系统硬件安全操作系统与数据安全应用软件与中间件安全恶意代码分析与防护...

2019-09-24 23:17:59 416

原创 第二章 操作系统的硬件环境

第二章 操作系统的硬件环境操作系统运行的硬件环境组成中央处理器存储系统中断系统I/O系统时钟以及时钟序列//- Linux中断处理操作系统的运行环境主要包括系统的硬件环境和由其他的系统软件形成的软件环境。中央处理器专门为操作系统设计了一系列基本机制,包括具有特权界别的处理器状态,以及能在不同特权级别运行的各种特权指令。存储系统提供了分层的存储体系结构和存储能力,为操作系...

2019-09-23 23:11:38 2251

原创 操作系统概述

第一章 操作系统概述要点计算机系统的软件和硬件组成操作系统的基本概念操作系统的技术发展过程操作系统的特征操作系统的分类操作系统的功能研究操作系统的几种观点1.1 计算机系统计算机系统:按人的要求接收和存储信息,自动进行数据处理和计算,并输出结果信息的机器系统。计算机系统由软件系统(应用软件,支撑软件,系统软件)和硬件系统构成。硬件系统由运算器,主存储器,控制器,输...

2019-09-23 20:35:29 194

原创 应用层

网络层笔记因审核未通过无法上传,全套笔记点这里应用层C/S与P2P模式的特点DNS协议、DHCP协议基本工作原理SMTP、FTP协议与TELNET协议基本工作原理WEB(HTTP)协议与搜索引擎的基本工作原理即时通信与SIP协议基本工作原理网络管理与SNMP协议基本工作原理FTP协议工作原理与应用层协议分析方法1 Internet应用与应用层协议分类1.1 Internet...

2019-09-23 20:34:14 1093

原创 传输层

传输层网络环境中分布式进程通信的基本概念C/S模式基本概念传输层的基本功能与服务质量QoS的基本概念TCP、UDP协议的基本内容1.1 传输层与传输层协议1.1.1 传输层基本功能利用网络层所提供的服务,在源主机应用进程与目的主机应用进程之间建立端-端连接,实现分布式进程通信满足计算机继承通信所要求的服务质量问题屏蔽传输网实现技术的差异性1.1.2 传输协议数据单元...

2019-09-20 00:08:53 1043

原创 计算机网络第一章

计算机网络第一章1.1计算机网络在信息时代的作用三网电信网络计算机网络(因特网、其他)有线电视网络计算机网络重要功能连通性:交换信息共享性:信息共享,软硬件共享集中处理1.2因特网概述1st:1960s-1980s ARPANET向互联网发展2nd:1980s-1990s 三级结构因特网3rd: 多层次ISP结构因特网...

2019-09-19 00:46:17 195

原创 SQL语言总结

常用sql语句大全:定义模式:Create schema 模式名 authorization 用户名删除模式:Drop schema 模式名 <cascade|restrict>定义基本表:Create table 表明 (列名 数据类型 约束条件,表级完整性约束);主键:primarykey唯一:unique外键:foreign key(列名) referen...

2019-06-30 12:55:51 811

原创 43-字符串相乘

题目描述给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。示例 1:输入: num1 = "2", num2 = "3"输出: "6"示例 2:输入: num1 = "123", num2 = "456"输出: "56088"说明:num1 和 num2 的长度小于110。num1 和 num2...

2019-06-16 15:16:49 137

原创 674-最长连续递增序列

题目描述给定一个未经排序的整数数组,找到最长且连续的的递增序列。示例 1:输入: [1,3,5,4,7]输出: 3解释: 最长连续递增序列是 [1,3,5], 长度为3。尽管 [1,3,5,7] 也是升序的子序列, 但它不是连续的,因为5和7在原数组里被4隔开。 示例 2:输入: [2,2,2,2,2]输出: 1解释: 最长连续递增序列是 [2], 长度为1。注意:数组长...

2019-06-14 13:17:49 187

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

题目描述根据一棵树的前序遍历与中序遍历构造二叉树。注意:你可以假设树中没有重复的元素。例如,给出前序遍历 preorder = [3,9,20,15,7]中序遍历 inorder = [9,3,15,20,7]返回如下的二叉树: 3 / \ 9 20 / \ 15 7来源:力扣(LeetCode)链接:https://leetcod...

2019-06-13 13:03:55 204

原创 94-二叉树的中序遍历

题目描述给定一个二叉树,返回它的中序 遍历。示例:输入: [1,null,2,3] 1 \ 2 / 3输出: [1,3,2]进阶: 递归算法很简单,你可以通过迭代算法完成吗?递归解法如题所说,递归算法十分简单。class Solution { List<Integer> list = new ArrayList&l...

2019-06-12 16:24:10 90

原创 58-最后一个单词的长度

题目描述给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度。如果不存在最后一个单词,请返回 0 。说明:一个单词是指由字母组成,但不包含任何空格的字符串。示例:输入: "Hello World"输出: 5解题思路太简单了,四行代码搞定String[] word = s.split(" "); if(word.length == ...

2019-06-10 14:25:05 83

原创 671-二叉树中第二小的节点(Second Minimum Node In a Binary Tree)

题目描述中文给定一个非空特殊的二叉树,每个节点都是正数,并且每个节点的子节点数量只能为 2 或 0。如果一个节点有两个子节点的话,那么这个节点的值不大于它的子节点的值。 给出这样的一个二叉树,你需要输出所有节点中的第二小的值。如果第二小的值不存在的话,输出 -1 。英文Given a non-empty special binary tree consisting of nodes...

2019-06-09 15:18:04 112

原创 926-将字符串翻转到单调递增(Flip String to Monotone Increasing)

题目描述中文如果一个由 '0' 和 '1' 组成的字符串,是以一些 '0'(可能没有 '0')后面跟着一些 '1'(也可能没有 '1')的形式组成的,那么该字符串是单调递增的。我们给出一个由字符 '0' 和 '1' 组成的字符串 S,我们可以将任何 '0' 翻转为 '1' 或者将 '1' 翻转为 '0'。返回使 S 单调递增的最小翻转次数。英文A string of '0's ...

2019-06-08 15:25:23 171

原创 455-分发饼干(Assign Cookies)

题目描述中文假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i ,都有一个胃口值 gi ,这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j ,都有一个尺寸 sj 。如果 sj >= gi ,我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。注意:你可...

2019-06-06 10:29:19 100

原创 860-柠檬水找零(Lemonade Change)

题目描述中文在柠檬水摊上,每一杯柠檬水的售价为 5 美元。顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。每位顾客只买一杯柠檬水,然后向你付 5 美元、10 美元或 20 美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付 5 美元。注意,一开始你手头没有任何零钱。如果你能给每位顾客正确找零,返回 true ,否则返回 false 。英文At ...

2019-06-05 15:14:28 152

原创 415-字符串相加(Add Strings)

题目中文给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。注意:num1 和num2 的长度都小于 5100.num1 和num2 都只包含数字 0-9.num1 和num2 都不包含任何前导零。你不能使用任何內建 BigInteger 库, 也不能直接将输入的字符串转换为整数形式。英文Given two non-negative integers num1 ...

2019-06-04 16:18:35 211

原创 162-寻找山峰(Find Peak Element)

题目描述中文峰值元素是指其值大于左右相邻值的元素。给定一个输入数组 nums,其中 nums[i] ≠ nums[i+1],找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回任何一个峰值所在位置即可。你可以假设 nums[-1] = nums[n] = -∞。英文A peak element is an element that is greater than...

2019-06-03 12:48:03 1337

原创 1037-有效的回旋镖(Valid Boomerang)

题目描述中文回旋镖定义为一组三个点,这些点各不相同且不在一条直线上。给出平面上三个点组成的列表,判断这些点是否可以构成回旋镖。英文A boomerang is a set of 3 points that are all distinct and not in a straight line.Given a list of three points in the plane, r...

2019-06-02 13:03:52 186

原创 77-组合(Combinations)

题目描述中文给定两个整数 n 和 k,返回 1 ... n 中所有可能的 k 个数的组合。英文Given two integers n and k, return all possible combinations of k numbers out of 1 ... n.示例输入: n = 4, k = 2输出:[ [2,4], [3,4], [2,3], [1...

2019-06-01 11:17:24 213

原创 443-压缩字符串(String Compression)

题目描述中文给定一组字符,使用原地算法将其压缩。压缩后的长度必须始终小于或等于原数组长度。数组的每个元素应该是长度为1 的字符(不是 int 整数类型)。在完成原地修改输入数组后,返回数组的新长度。英文Given an array of characters, compress it in-place.The length after compression must a...

2019-05-31 12:40:11 159

原创 71-简化路径(Simplify Path)

题目描述中文 以 Unix 风格给出一个文件的绝对路径,你需要简化它。或者换句话说,将其转换为规范路径。 在 Unix 风格的文件系统中,一个点(.)表示当前目录本身;此外,两个点 (..) 表示将目录切换到上一级(指向父目录);两者 都可以是复杂相对路径的组成部分。更多信息请参阅:Linux / Unix中的绝对路径 vs 相对路径 请注意,返回的规范路径必须始终以斜杠 / 开头...

2019-05-30 10:48:39 382

原创 70-爬楼梯(Climbing Stairs)

题目描述中文假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。英文You are climbing a stair case. It takes n steps to reach to the top.Each time you can either climb 1 or 2 st...

2019-05-29 17:01:43 405

原创 976-三角形的最大周长(Largest Perimeter Triangle)

题目描述中文:给定由一些正数(代表长度)组成的数组 A,返回由其中三个长度组成的、面积不为零的三角形的最大周长。如果不能形成任何面积不为零的三角形,返回 0。英文:Given an array A of positive lengths, return the largest perimeter of a triangle with non-zero area, formed from ...

2019-05-28 12:06:54 438

原创 430-扁平化多级双向链表(Flatten a Multilevel Doubly Linked List)

题目描述中文描述:您将获得一个双向链表,除了下一个和前一个指针之外,它还有一个子指针,可能指向单独的双向链表。这些子列表可能有一个或多个自己的子项,依此类推,生成多级数据结构,如下面的示例所示。扁平化列表,使所有结点出现在单级双链表中。您将获得列表第一级的头部。英文描述:You are given a doubly linked list which in addition to the...

2019-05-27 21:33:22 344

原创 蛮力法(Java)

暴力算法理论上十分容易理解,就是将问题可能出现的所有答案都列举出来,然后与条件对比,符合条件的解即为正解。下面我们列举几道例题。1-1 数谜问题ABCAB * A = DDDDDD,求解ABCD分别为多少。public class NumPuz { public static boolean isTrue(int num) { if(num / 100000 &lt;= 0)...

2019-03-07 19:51:44 1226

hotspot-d9c3790c85c1.rar

Hotspot1.6源代码,是本系列博客分析所用源码

2019-09-28

空空如也

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

TA关注的人

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