自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 资源 (3)
  • 收藏
  • 关注

原创 代码1

public class TopK_Partition { public static List<Integer> topK(int[] a, int k){ List<Integer> res = new LinkedList<>(); int begin = 0, end = a.length-1; int index = partition(a, begin, end); while (inde

2020-09-15 14:42:07 576

原创 算法课程期末复习总结

八大排序算法复杂度比较求解递归式的复杂度Max Sum(最大子段和)int len = arr.length;int[] dp = new int[len + 1];dp[0] = 0;for(int i = 1; i <= len; i ++) { dp[i] = Math.max(dp[i-1] + arr[i], arr[i]);}int res = Integer.MIN_VALUE;for(int i = 1; i < dp.length; i ++) {

2020-08-20 11:49:19 978

原创 软件体系结构期末复习总结

什么是软件体系结构?软件体系结构是具有一定形式的结构化元素,抽象的讲,软件体系结构包括构成系统的设计元素的描述,设计元素的交互,设计元素组合的模式,以及在这些模式中的约束。具体的讲,体系结构 = 组件+连接件+约束组件:具有某种功能的可重用的软件模块单元,表示了系统中主要的计算单元和数据存储。连接件:表示了组件之间的交互,简单的连接件有:管道,过程调用,事件广播等,复杂的连接件有:客户-服务器通信协议,数据库和应用之间SQL连接等。约束:表示了组件和连接件的拓扑逻辑和约束。七种经典的软件体系结

2020-08-18 21:14:41 20009 9

原创 Java多态(详解重载和重写,静态分派和动态分派)

文章目录Java中的多态继承向上转型向下转型多态(重载是静态分派 重写是动态分派)重载静态分派重写动态分派总结参考链接Java中的多态要了解多态,我们先来看一下继承。继承public class inheritExmple { public static void main(String[] args) { //向上转型(子类向父类去转型,隐士转换) Person person = new Child(); person.sleep()

2020-07-31 11:54:45 1042 1

原创 静态代码块 构造代码块 构造函数 深入分析

文章目录静态代码块 构造代码块 构造函数 的执行顺序概念静态代码块构造代码块构造函数普通代码块执行顺序简单例子解释父子类之间的加载顺序(重要)解释参考链接静态代码块 构造代码块 构造函数 的执行顺序概念静态代码块//在java类中(方法中不能存在静态代码块)使用static关键字和{}声明的代码块public class CodeBlock { static { System.out.println("静态代码块"); }}执行时机静态代码块在类被加载的时候就

2020-07-31 11:46:28 228

原创 XP Professional开机就要激活,否则无法登录桌面

上个月有门课程实验需要XP系统,所有参考这篇博客:VMware Workstation:安装windows xp系统在虚拟机中装了xp专业版,当时成功安装并激活了,但是一个月后出现了这样的问题:(这里截取了该文章下的一条评论,该读者与我出现的问题一样)网上有很多方法,本文参考这篇文章XP Professional开机就要激活,否则无法登录桌面.对其中重要步骤进行配图1.开机按F8 进入安全模式(...

2020-07-27 10:03:30 21670 24

原创 GC与内存分配面试知识总结

GC需要完成三件事:哪些内存需要回收什么时候回收如何回收对象已死吗引用计数法这个算法是这样判断对象是否存活的:给对象中添加一个引用计数器,每当有一个地方引用它时,计数器就加1;当引用失效时,计数器值就减1;任何时刻计数器为0的对象就是不可能再被使用的。它无法解决对象之间循环引用的问题,同时虚拟机也不是通过引用计数法来判断对象是否存活的简单示例: 对象objA和objB都有属性instance,赋值令objA.instance = objB 及 objB.instance = objA,

2020-07-02 01:08:23 322

原创 JVM运行时数据区

运行时数据区概念: Java虚拟机在执行Java程序的过程中会把它管理的内存划分为若干个不同的区域。这些区域都有各自的用途,以及创建时间和销毁时间。可按照由线程共享或线程隔离来将Java虚拟机运行时数据区划分如下:线程私有的: 程序计数器,虚拟机栈,本地方法栈线程共享的: 堆,方法区程序计数器程序计数器(Program Counter Register)是一块较小的内存空间,它可以看做当前线程所执行的字节码的行号指示器。字节码解释器工作时就是通过改变这个计数器的值来获取下一条需要执行的字节码

2020-07-02 01:03:59 162

原创 AOE网中求解关键路径(Critical Path)

首先推荐有个b站视频,讲关键路径讲的非常好,20min可搞懂:https://www.bilibili.com/video/BV1PW41187vc?from=search&seid=40093726432206649一、概念AOE网: 用顶点表示事件,用边表示活动,权表示活动持续的时间。AOE网可回答的问题有:完成整个工程至少需要多长时间?哪些活动是影响工程进度的关键?活动的最早开始时间和最晚开始时间?活动的总浮动和自由浮动时间。找到图的关键路径属于项目管理的范围,应由项目经理严格

2020-06-03 01:24:14 2649

原创 设计模式——单例模式(java:一步步优化至最优写法)

目录一、概念二、分类三、代码实现饿汉式:在系统加载时就创建类的单例。方法一:静态常量法:将唯一实例obj设置成静态常量方法二:静态代码块:将类的实例化放在静态代码块中,与上述的静态常量一致,都是在类装载时创建单例,因此优缺点一致方法三:静态内部类 : Singleton2在加载的时候不会被实例化,而是在需要实例化时(调用getInstance()),才会装载静态内部类,从而完成Singleton2的实例化。多线程下可以实现单例懒汉式:在需要单例的时候才去创建方法一: 只判

2020-06-01 22:37:26 2108 7

原创 面试手撕 (1):两个栈实现队列+两个队列实现栈

最近在找实习,打算开一个名叫‘面试手撕算法’的专栏,里面包含一些面试常见的算法题,而一般面试中的代码题会比笔试中的题简单一点,考的很基础的概念。但是往往有一些小细节被忽略,而使我们无法在短时间成功写出代码。在这里,我会将我遇到的面试题和在一些帖子上常讨论的题进行整理,希望能帮助大家,一起学习。昨天美团一面,面试官考了:用双栈实现一个队列,并且实现push(),pop()方法。两个栈实现...

2020-04-22 16:36:46 314

原创 String StringBuffer StringBuilder

String StringBuffer StringBuilderString字符串常量StringBuffer线程安全的可变字符序列StringBuilder非线程安全的可变字符序列1. 可变与不可变性String类中使用final关键字修饰字符数组来保存字符串,private final char value[](java9之后用byte数组存储字符串),所以它是不可变对象。即每...

2020-04-06 19:24:50 170

原创 求包含n个整数的数组A的第i小的数

题目:求包含n个整数的数组A的第i小的数。解法一:排序将数组A从小到大排序,之后第i个数即为所求。时间复杂度为O(n²)解法二:维护一个长度为i的有序数组B[i](顺序为从小到大),遍历A[j],每遍历到一个元素将其与B中的最大元素(即B中最后一个元素)作比较,若比B中最大元素大,则继续遍历。否则挤掉最大元素并插入到B中的合适位置,有点类似直插法。 比如i...

2020-03-09 00:15:13 163

原创 两数和问题(在数组中找出两数和为给定整数的两元素)

题目:输入包含n个整数是数组A的整数x,求出满足A[i]+A[j]=x的i和j,如果没有这样的元素和,则返回-1和-1。我的分析如下:此题需要注意的是:数组中可能有重复元素,满足条件的解不止一组。例如,给定数组A[1,3,2,2]和x=4,则满足条件的解为(0,1):1+3=4 和(2,3):2+2=4。解法一:暴力解法遍历每个元素A[i],并查找是否存在一个值...

2020-03-09 00:04:49 579

原创 微机原理实验报告

目录实验一 汇编语言编程实验一、 实验目的二、 实验所用仪器三、 实验内容及基本原理四、 实验数据记录五、 实验结果分析及回答问题(或测试环境及测试结果)实验二 数码转换实验一、 实验目的二、 实验所用仪器三、 实验内容及基本原理四、 实验数据记录五、 实验结果分析及回答问题实验三 基本 IO 口扩展实验一、 实验目的二、 实验所用仪器...

2019-12-17 17:43:51 24137 1

原创 函数绘图语言详细版

!!!说明,本文源码参考github:https://github.com/TaronLedgerS/MyCompiler,其中本人对于语法分析器改动了一小部分,另外由于作者水平有限,学不会windows界面编程,故语义分析和绘图模块是用python实现的,由于c++和python都是面向对象语言,故将词法分析,语法分析模块转成等价python语言应该不会很难。作者认为,词法分析和语法分析这两部分...

2019-12-17 17:04:46 1063 1

原创 函数绘图语言解释器——编译原理课程实验报告

本实验是编译原理课程大作业,制作函数绘图语言解释器(c++编写)

2019-12-17 16:42:17 1829 1

原创 Linux硬连接和软连接

最近学习了linux的文件系统,以下是关于软硬连接的整理,参考了如下的三篇博客,写了一些自己的心得,有不正之处希望指出!参考博客:https://blog.csdn.net/ljianhui/article/details/9324043https://blog.csdn.net/e421083458/article/details/12653743https://blog.csd...

2019-11-05 00:02:29 332 1

原创 Python基础知识入门(五)——面向对象及异常处理的典型代码实现

#类的定义与对象的创建#example 1class Person: number=0 #类属性 def __init__(self,name,gender,age): #构造函数,创建对象时自动调用,用于初始化对象属性,通常self被指定为第一个参数,表示所创建的对象 self.name=name self.gender=gender ...

2019-09-05 01:35:35 234 1

原创 Python基础知识入门(四)——模块的下载,自定义及使用方式(代码实现)

#example 1#模块的使用'''模块是一个包含所有定义的函数和变量的文件,后缀名时py,可以被别的程序引入每个Python文件就是一个模块,文件的名字就是模块的名字当解释器遇到import语句时,会在搜索路径中去查找模块。 >>> import sys #查看系统默认路径 >>> sys.path也可以像默认路径中增加目录...

2019-09-04 17:07:18 191 1

原创 Python基础知识入门(三)——函数详解(参数,返回值,嵌套等)的代码实现

#example 1#字符串逆序str=input('请输入一个字符串:')print("原串:",str)print("逆串:",str[-1::-1])#以下使用字符串格式化输出print("原串:%s"%(str))print("逆串:%s"%(str[-1::-1]))print("今年是%d年%d月%d日,天气%s!"%(2017,1,1,'晴')) #格式化字符...

2019-09-04 15:01:10 378

原创 python基础知识入门(一)

python基础知识入门目录 (一)程序语言的演变(二)高级语言的运行机制(三)python语言特点(四)Python的两种运行方式(五)语法规则(六)数据类型 (八)模块的使...

2019-09-03 19:30:02 489

原创 python基础知识入门(二)——变量(基本和复合数据类型)和语句(三种控制流程)的代码实现

#example 1'''python变量名是对数据的引用因此用赋值语句对变量重新赋值时,python为其分配新的内存单元该变量将指向新的地址'''x=1print("x的内存地址为:",id(x))x=2print("x的内存地址为:",id(x))y=xprint("y的内存地址为:",id(y))'''运行结果x的内存地址为: 1533373456x的内存地址...

2019-09-03 18:44:13 583

原创 c++三种继承方式(public,private,protected)

(一)不同成员的可见度私有成员在派生类中不可见,只有在基类中可见。保护成员,在派生类中可见私有成员和保护成员在 类通通不可见。公有成员在派生类和类外都可见。(二)示例程序加深理解例如,拿protected继承来讲,首先,在派生类中, 除了基类的私有成员pvB()不能访问外,其他都可以访问。其次,在类内对派生类来说,由于基类在派生类中的访问控制规则可得:基...

2019-07-03 21:26:07 3834

原创 c++动态多态——虚拟函数的两种调用方式

(一)指针调用#include <iostream>using namespace std;class B {public: virtual void m() { cout << " B::m" << endl; }};class D: public B {public: virtual void m() {...

2019-07-03 20:44:40 765

原创 虚拟函数和纯虚拟函数

(一)对虚拟函数的理解:a.一种动态多态机制,可以被基类指针,基类引用,以及对象所调用b.在基类中必须给出虚拟函数的实现代码,用virtual 关键字定义c.在派生类中,可以重新定义此虚拟函数,也可以不定义(若不定义则继承基类的实现代码)d.虚拟函数的接口不能再重新定义时改变(这意味着形参列表以及返回值类型必须完全一样,否则就不是虚拟函数了,而是其他函数,详细了解请移步另篇博客)...

2019-07-03 20:32:43 2092

原创 c++中的继承机制(Derived Classes)

Employee与Manager就是基类与继承类的关系:当我们令 Manager 继承 Employee 时,目的除了是要表示它们之间的相似关系以外,还要让 Manager 的操作集利用继承关系的描述而自然地发生扩张。对 Employee 数据结构的继承只是手段而不是目的。下面,用一个例子来帮助我们理解继承机制:某公司有普通职员和管理者两种员工,每位职员都有姓名、年龄、工龄和所...

2019-07-03 12:26:07 3170 2

原创 哈夫曼树(HuffmanTree)详解

目录1.哈夫曼算法2.举例说明,感性认识哈夫曼算法,根据上面的4步得出下表3.结点结构体类型的定义4.select函数的编写 5.哈夫曼树的创建及编码的创建6.解码7. 打印哈夫曼树和哈夫曼编码8.完整代码9.运行截图1.哈夫曼算法1.根据给定的n个权值{w1,w2,...,wn}构造n棵二叉树的集合F={T1,T2,...,Tn},其中每棵二叉树Ti...

2018-11-22 22:16:20 11712 3

原创 根据先序和中序序列重建二叉树(打印二叉树的后序序列)

1.重建条件我们知道,要重建二叉树,必须得有中序序列,有了中序,才可以划分出根结点的左子树和右子树。而由先序和后序可以很容易确定根结点,因此,先序和中序或者后序和中序可以唯一确定二叉树。此处运用递归的方法,仅以先序和中序序列为代表,给出重建二叉树的代码,供大家参考。2.核心代码//根据先序和中序重建二叉树,pre和mid分别指向先序和中序序列,n为结点总数BiTree Bu...

2018-11-22 20:45:56 723

原创 求二叉树的高度和叶子结点的个数

叶子结点即是左右子树都为空的结点,求叶子结点的个数。1.先运用递归的方式创建二叉树,上篇已经提过,可以自行查阅,此处不做赘述。//创建二叉树Status CreateBiTree(BiTree &amp;T){ char ch; scanf("%c",&amp;ch); if (ch=='.') T = NULL; else {...

2018-11-22 20:18:17 3983

原创 二叉树的先序遍历,中序遍历,后序遍历和层序遍历

1.二叉树的构成任何一个非空的二叉树都由根结点、左子树、右子树这三部分构成。树的遍历是访问树中每个结点仅一次的过程。可将遍历看作是把所有的结点放在一条线上(即对树进行线性化的处理)。 2.二叉树的遍历先序遍历: DLR         中序遍历:LDR          后序遍历:LRD          层序遍历:一层一层从左向右依次输出 3.实现代码:...

2018-11-21 00:08:28 6951 2

原创 字符串的基本操作(包括串赋值,串拼接,求子串,查找串,删除与插入等等)

1.串的定义  串(String)是零个或多个字符组成的有限序列。一般记作:S=“a1a2a3…an”,其中,S是串名; “a1a2a3…an”是串值;ai(1≤i≤n)可以是字母、数字或其它字符;串的长度:串中所包含的字符个数;空串:长度为零的串称为空串(Empty String),它不包含任何字符。空白串: 通常将仅由一个或多个空格组成的串称为空白串(Blank St...

2018-11-19 17:58:08 22064 3

原创 学生成绩统计,最大值,最小值和平均值(C语言)

1.要求第一行输入学生总数:N2.第二行依次输入成绩 #include &lt;stdio.h&gt;float Max(float x,float y){ if(x&gt;y) return x; else return y;}float Min(float x,float y){ if(x&lt;y) return x; else return...

2018-11-13 21:49:25 12785

原创 计算机考试C1-1随笔

1.考察要点Linux命令行基本操作,Windows基本设置,office办公软件使用,MATLAB基础2.简略整理cmd命令行1.转盘时不用cd,若想进入d盘,则直接d:2.进入当前盘的Programming software目录,cd \Programming software3.进入当前盘的根目录,若给D:\Programming software\Matlab\bi...

2018-11-13 21:49:11 4625

原创 条件编译ifdef和extern外部声明用法(c基础知识随笔)

Matlab:1.当Matlab中没有命令提示符的时候,可能是其他程序在占用进程,这时应按键ctrl+c键查看当前程序 2.在编写M文件时要使得函数名和文件名相同;另外,若每行行尾加上;则在命令行中不输出改行的结果。 3.keyboard用于暂停M文件,暂时将执行权交给命令行,按键dbcont可交执行权于M文件;若按dbquit 则退出M文件,直接进命令行。数据结构:1.def...

2018-11-13 21:48:47 1181

原创 杨辉三角(以正三角形打印和以直角三角形打印)

1.题目来源作者: 徐镜春单位: 浙江大学时间限制: 400 ms内存限制: 64 MB代码长度限制: 16 KB2.题目简述本题要求按照规定格式打印前N行杨辉三角。输入格式:输入在一行中给出N(1≤N≤10)。输出格式:以正三角形的格式输出前N行杨辉三角。每个数字占固定4位。输入样例:6输出样例: 1 ...

2018-11-12 13:41:00 6769 3

原创 给定平面上任意三个点的坐标(x​1​​,y​1​​)、(x​2​​,y​2​​)、(x​3​​,y​3​​),检验它们能否构成三角形

1.题目来源 作者: 杨起帆单位: 浙江大学时间限制: 200 ms内存限制: 64 MB代码长度限制: 16 KB2.题目简述给定平面上任意三个点的坐标(x​1​​,y​1​​)、(x​2​​,y​2​​)、(x​3​​,y​3​​),检验它们能否构成三角形。输入格式:输入在一行中顺序给出六个[−100,100]范围内的数字,即三个点的坐标x​1​​、y​1​...

2018-11-12 13:22:22 20718 13

原创 三天打鱼两天晒网

1.题目来源 作者: C课程组单位: 浙江大学时间限制: 400 ms内存限制: 64 MB代码长度限制: 16 KB2.题目简述中国有句俗语叫“三天打鱼两天晒网”。假设某人从某天起,开始“三天打鱼两天晒网”,问这个人在以后的第N天中是“打鱼”还是“晒网”?输入格式:输入在一行中给出一个不超过1000的正整数N。输出格式:在一行中输出此人在第N天中是“F...

2018-11-12 13:00:32 839

原创 猴子吃桃问题

1.题目来源作者: 徐镜春单位: 浙江大学时间限制: 400 ms内存限制: 64 MB代码长度限制: 16 KB2.题目简述一只猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个;第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半加一个。到第N天早上想再吃时,见只剩下一个桃子了。问:第一天共摘了多少个桃子? 3.源代码...

2018-11-12 00:49:25 487

原创 按等级统计学生成绩

1.题目来源作者: 张泳单位: 浙江大学时间限制: 400 ms内存限制: 64 MB代码长度限制: 16 KB 2.问题简述本题要求实现一个根据学生成绩设置其等级,并统计不及格人数的简单函数。函数接口定义:int set_grade( struct student *p, int n );其中p是指向学生信息的结构体数组的指针,该结构体的定义为:...

2018-11-12 00:43:42 2062

西电算法课程期末复习资料.zip

西电的算法课程复习资料,包含课件,自己整理的笔记和考题记录。 课程内容如下: 八大排序的详细讲解,求解递归式的复杂度,常用的几种算法和典例,贪心有活动选择,部分背包,迪杰斯特拉等,动规的有装配线调度,最大子段和,0-1背包,最长公共子序列(LCS),最长回文子序列的长度等,回溯的有全排列,N皇后等,还分享了自己的期末复习总结和考试总结。

2020-08-20

Software Architecture.zip

软件体系结构期末复习资料,包含课件,往届题以及自己整理的笔记和考试总结。 主要分为四部分知识,软件体系结构概述,常用的七种软件体系结构风格,建模和UML,六种质量属性和体系结构评估(主要ATAM方法,效应树)

2020-08-18

软件设计师历年真题详解.zip

软件设计师考试,历年真题详解,05-18年(包含上午题和下午题)

2019-09-08

空空如也

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

TA关注的人

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