自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

wang_409的博客

自由源于自律

  • 博客(58)
  • 资源 (4)
  • 收藏
  • 关注

原创 Java 语言 File详解(全)

File类介绍它是文件和目录路径名的抽象表示,文件和目录是可以通过File封装成对象的,对于File而言,其封装的并不是一个真正存在的文件,仅仅是一个路径名而已。它可以是存在的,也可以是不存在的。将来是要通过具体的操作把这个路径的内容转换为具体存在的。...

2021-06-17 14:15:43 316 1

原创 java模拟斗地主,经典秒懂

思路利用HashMap<>,健值对,健表示序号,值表示牌的值(大小)Arraylist用来记录序号,并换乱利用TreeSet,存储和排序for循环显示牌package comeon19;import java.util.ArrayList;import java.util.Collections;import java.util.HashMap;import java.util.TreeSet;public class ddza { public static voi

2021-06-16 20:53:33 257

原创 Java统计字符串中每个字符出现的次数

统计字符串中每个字符出现的次数1.输入一个字符串2.统计个数备注:利用TreeMap集合实现public class chnums { public static void main(String[] args) { System.out.println("请输入一个字符"); Scanner scanner = new Scanner(System.in); String line = scanner.nextLine();

2021-06-15 11:20:51 2269

原创 集合嵌套之ArrayList/HashMap相互嵌套

集合嵌套集合嵌套之HashMap嵌套ArrayList集合嵌套之ArrayList嵌套HashMap集合嵌套之HashMap嵌套ArrayList需求:1.创建一个HashMap集合,每一个键值对元素的键是String,值是ArrayList;2.ArrayList的元素是String;3.遍历。public class hM { public static void main(String[] args) { HashMap<String,ArrayList&lt

2021-06-15 10:58:31 235

原创 Map集合(全),适合收藏

Map集合详讲1 map集合2 map特点3 map的方法介绍4 map遍历方式1 map集合interface Map<K,V> K:键的类型;V:值的类型是一个接口,用实现类实现Map<T,V> map = new HashMap<T,V>();2 map特点1.键值对映射关系2.一个键对应一个值3.键不能重复,值可以重复4.元素存取无序3 map的方法介绍创建以及添加 Map<String,String> map= new Has

2021-06-09 22:46:40 227

原创 Set集合,Set集合排序,泛型。小白也能懂

这里写目录标题1.Set集合1.1Set集合的特点1.2HashSet集合的特点2.Set集合排序2.1 TreeSet2.2 自然排序Comparable2.3学生成绩排序实例2.3.1 描述2.3.2 书写3.泛型3.1 描述3.2 泛型类举例3.3 泛型方法举例3.4泛型接口1.Set集合1.1Set集合的特点元素存取无序没有索引、只能通过迭代器或增强for循环遍历不能存储重复元素举例说明:Set<String> set = new HashSet<String>

2021-06-08 23:05:22 191

原创 Java 时间日期类+实例(任意一个月的天数),超详细

1.Date类public Date()//并初始化,以便它代表它被分配的时间,精确到毫秒public Date(long date)//初始化为表示从标准基准时间起指定的毫秒数分配一个 Date对象,并初始化public long getTime()//获取的是日期对象从1970年1月1日 00:00:00到现在的毫秒值public void setTime(long time)//设置时间,给的是毫秒值 Date d1 = new Date(); System.out.println

2021-05-19 16:41:41 685 2

原创 java实战-字符串数据排序

字符串数据排序分割字符串字符串数据转化为int数组调用函数进行排序拼接成字符串输出import java.util.Arrays;public class IntegerTest { public static void main(String[] args) { String s="99,24,27,58,35"; String[] strArray = s.split(",");//分割字符串 int[] arr = new in

2021-05-17 22:05:56 325

原创 I/O系统层次结构与功能实现,足够详细了

I/O系统层次结构与功能实现层次结构图功能介绍请求与访问顺序层次功能实现假脱机技术设备的分配与回收设备分配管理中的数据结构:设备分配的步骤缺点层次结构图功能介绍用户层软件:用于实现用户与I/O设备交互;设备独立性软件:用于实现用户程序与设备驱动器的统一接口、设备命令、设备保护,以及设备分配与释放等;设备驱动程序:与硬件直接有关,用来具体实现系统对设备发出的操作指令,驱动I/O设备工作;中断处理程序:用于保存被中断进程的CPU环境,转入相应的中断处理程序进行处理,处理完后恢复现场,并返回到被中断

2021-05-17 18:03:31 3687

原创 Java String | int 相互转换的两种方法

int 转String1.拼接int number =100;String s1=" " +number;2. public static String valueOf(int i)int number =100;String s2=String.valueOf(number);String转int1.String–>Integer–>intString s="100";Integer i=Integer.valueOf(s);int x=i.intValue();

2021-05-13 22:40:05 94

原创 Java Integer对象如何得到?

Integer对象如何得到?推荐前两种,后两种已过时。1.静态方法获取对象:public static Integer valueOf(int i) Integer I=i1=Integer.valueOf(100)2.静态方法获取对象:public static Integer valueOf(String s) Integer I=i1=Integer.valueOf("100")//此处为数字字符串3. 构造方法:public Integer(int value) Integer I=

2021-05-13 22:15:59 458

原创 Linux/Shell 指令---很详细

1.文件操作命令1.1 显示文件内容命令按参数指定的顺序,依次把所列名字的文件内容送屏幕显示 $ cat filename1 filename21.2 复制文件副本的命令cp对已存在的文件sourse 建立一个名为target的副本 cp sourse target1.3 对已有文件改名的命令用mvmv oldname newname1.4 撤销文件的命令 rm它给出一个参数表,是要撤销的文件名清单1.5 确定文件类型的命令file该命令带有一个参数,用于给出该文件类型的文

2021-05-06 21:11:29 166 1

原创 I/O控制方式

I/O控制方式程序直接控制方式CPU干预数据的流向流程图主要缺点和主要优点中断驱动方式CPU干预数据的流向流程图主要缺点和主要优点DMA方式CPU干预数据的流向流程图主要缺点和主要优点通道控制方式CPU干预数据的流向流程图主要缺点和主要优点程序直接控制方式CPU干预很频繁,I/O操作开始之前,完成之后需要CPU介入,而且在等待I/O完成的过程中CPU需要不断得轮询检查。数据的流向每次读/写一个字读操作(数据输入):I/O设备->CPU->内存写操作(数据输出):内存->CPU

2021-05-03 16:08:22 167 2

原创 java参数传递之形参和返回值

1.类名作为形参方法的形参是类名,其实需要的是该类的对象//创建一个猫类public class Cat { public void eat(){ System.out.println("猫吃老鼠"); }}//创建一个操作类,其方法的参数是猫类public class Catoperation { public void useCat(Cat c){ c.eat(); }}//测试类,创建对象Catoperation(),

2021-05-02 19:31:25 427

原创 抖动现象与工作集,总算讲明白了

1. 抖动现象刚刚换出的页面马上又要换出内存,刚刚换入的界面马上又要换出外存,这种频繁的页面调度行为称为抖动或者颠簸。2.抖动的原因进程频繁访问的页面数目高于可用的物理块数。为进程分配的物理块太少,则发生抖动现象,太多则降低系统整体的并发性,降低某些资源的利用率。3.工作集3.1 驻留集:指请求分页存储管理中给进程分配的内存块的集合3.2 工作集:指在某段时间间隔里,进程实际访问页面的集合。3.3 例题操作系统会根据“窗口尺寸”来算出工作集。例:某进程的页面访问序列如下,窗口尺寸为4,各

2021-05-01 21:03:14 1812

原创 页面分配、置换策略

1.固定分配局部置换系统为每个进程分配一定数量的物理块,在整个运行期间都不改变。若进程在运行中发生缺页,则只能从该进程在内存中的页面中选出一页换出,然后再调入需要的页面。这种策略的缺点是:很难在刚开始就确定应为每个进程分配多少个物理块才算合理。(采用这种策略的系统可以根据进程大小、优先级、或是根据程序员给出的参数来确定为一个进程分配的内存块数)2.可变分配全局置换刚开始会为每个进程分配一定数量的物理块。操作系统会保持一个空闲物理块队列。当某进程发生缺页时,从空闲物理块中取出一块分配给该进程;若已无空闲

2021-05-01 20:47:29 2869 2

原创 页面置换算法-OPT + FIFO + LRU+CLOCK,一篇就够了

1.页面置换算法之OPT1.1 概念优先淘汰最长时间内不会被访问的页面,缺页率最小,性能最好,但是无法实现1.2 例题假设系统为某进程分配三个内存块,并考虑到有一个页面号引用串。依次访问以下页面:7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1步骤1:首先页面7进入内存块1步骤2:还有剩余的内存块,将页面0放入内存块2步骤3:还有剩余的内存块,将页面1放入内存块3步骤4:要访问页面2,内存块已经占满,此时进行淘汰。现在内存块中有:7,0,1。优先淘汰最长时间

2021-05-01 18:33:37 4348 2

原创 虚拟内存的最大容量与实际容量区别

虚拟内存的最大容量与实际容量区别1.概念介绍虚拟内存的最大容量是计算机的地址结构,CPU寻址范围决定的。虚拟内存的实际容量是=min(内存与外存之和,CPU寻址范围)2.例题介绍某计算机的地址结构是32位,按字节编址,内存大小512MB,外存大小2GB。虚拟内存的最大容量=2的32次方=4GB虚拟内存的实际容量是=min(512MB+2GB, 4GB)=512MB+2GB...

2021-05-01 15:39:37 11405 5

原创 段页式存储管理+例题

例:在一个采用段页式存储管理的系统中,页的大小为1KB。某个正在执行的作业情况如下:(1)请给出将逻辑地址(2,3500)转换成物理地址的过程;(2)计算出上述逻辑地址对应的物理地址的值。二级目录三级目录...

2021-04-29 11:36:03 10927 2

原创 分段存储管理+逻辑地址转化为物理地址+例题

1.引入原因方便编程,信息共享,信息保护,动态增长,看动态链接2.分段三级目录

2021-04-28 21:39:42 20458 7

原创 面向对象的基本特征--继承。

1.选用条件面向对象的基本特征之一:继承继承:相同的属性,相同特征,相同的方法,一般具有包含关系。我们可以选择用继承,接下来我们介绍一下继承的使用和注意事项。(封装,多态)2.继承的书写格式:public class 子类名 extends 父类名 { }子类的特点:可以有父类的方法,也可以有自己特有的方法。3.继承的访问特点在子类方法中访问一个变量:子类局部, 子类成员,父类成员super():表示父类对象的引用this:表示引用本类对象的引用子类中所有的构造方法默认都会访问父类中无

2021-04-24 21:59:23 215

原创 页式存储系统的逻辑地址是由页号和页内地址两部分组成的

1.例题页式存储系统的逻辑地址是由页号和页内地址两部分组成的。假定页面的大小为4KB,地址变换过程如图3-8所示,图中逻辑地址用十进制数表示。图中有效地址经过变换后,十进制数物理地址a应为()。A.33220B.8644C.4548D.2500解析:在页式存储管理中,逻辑地址除以页面的大小,商为页号,余数为页内地址。在本题中,页面的大小为4KB(4096),用逻辑地址8644除以4096,商为2,余数为452。查找页表可知,物理块号为8,因此十进制数物理地址a应为8×4096+452=332

2021-04-24 10:45:18 16437

原创 调度算法-多级反馈队列+例题详解

1. 调度机制(1) 设置多个就绪队列。优先级从高到低,时间片从小到大。(2) 每个队列都采用FCFS算法。当新进程进入内存后,首先将它放入第一队列的末尾,按FCFS原则等待调度。当轮到该进程执行时,如它能在该时间片内完成,便可撤离系统。否则,调度程序将其转入第二队列的末尾等待调度;如果它在第二队列中运行一个时间片后仍未完成,再依次将它放入第三队列,……,依此类推。(3) 按队列优先级调度。调度程序首先调度最高优先级队列中的诸进程运行,仅当第一队列空闲时才调度第二队列中的进程运行;换言之,仅当第

2021-04-20 21:31:46 16510 5

原创 调度算法-优先级调度算法+例题详解

1. 优先级调度算法的类型优先级进程调度算法,是把处理机分配给就绪队列中优先级最高的进程。这时,又可进一步把该算法分成如下两种。非抢占式优先级调度算法。抢占式优先级调度算法。2. 优先级的类型静态优先级静态优先级是在创建进程时确定的,在进程的整个运行期间保持不变。优先级是利用某一范围内的一个整数来表示的,例如0~255中的某一整数,把该整数称为优先数。动态优先级  动态优先级是指在创建进程之初,先赋予其一个优先级,然后其值随进程的推进或等待时间的增加而改变,以便获得更好的调度性能。

2021-04-20 20:48:08 60806 4

原创 调度算法-时间片轮转+例题详解

时间片轮转RR进程调度算法1.基本概念在轮转(RR)法中,系统将所有的就绪进程按FCFS策略排成一个就绪队列。系统可设置每隔一定时间(如30 ms)便产生一次中断,去激活进程调度程序进行调度,把CPU分配给队首进程,并令其执行一个时间片。当它运行完毕后,又把处理机分配给就绪队列中新的队首进程,也让它执行一个时间片。在RR调度算法中,应在何时进行进程的切换,可分为两种情况:① 若一个时间片尚未用完,正在运行的进程便已经完成,就立即激活调度程序,将它从就绪队列中删除,再调度就绪队列中队首的进程运行,并启动

2021-04-17 15:12:15 52907 13

原创 假设4个作业到达系统的时刻和运行时间如下表所示,系统在t=2时开始作业调度。若分别采用先来先服务和短作业优先调度算法,则选中的作业分别是

假设4个作业到达系统的时刻和运行时间如下表所示。系统在t=2时开始作业调度。若分别采用先来先服务和短作业优先调度算法,则选中的作业分别是______。A J2,J3 B J1,J4 C J2,J4 DJ1,J3解析:如下图所示,系统在t=2时,开始调度。此时系统中有J1,J2,J3三个作业。如果用先来先服务调度,则J1被选中。如果用短作业调度,在J1,J2,J3中选择运行时间最短的任务,即为J3,所以答案为D。补充一

2021-04-16 22:36:11 14384 4

原创 操作系统的基本特点

操作系统的基本特点1.并发a. 并行与并发:并行是指两个或者多个事件在同一个时刻发生;并发是两个或者多个事件在同一间隔内发生。b.引入进程:进程是系统中能独立运行并作为进行资源分配的基本单位,是操作系统结构的基础。它是由一组机器指令,数据和推栈等组成的。2.共享a.互斥共享方式:可以供多个进程(线程)使用,但是在一段时间内,只允许一个进程访问资源。b.同时访问方式:多个进程同时访问。并发与共享是多用户(多任务)OS的两个基本的特征。3.虚拟a.时分复用技术:是通过利用处理机的空闲时间运行其

2021-04-12 21:59:16 555

原创 面向对象的基本特征-多态

多态概要1.多态概述同一个对象,在不同时刻表现出来的不同形态。多态的前提和体现 :有继承/实现关系;有方法重写;有父类引用指向子类对象。2. 多态的好处与弊端好处:提高程序的扩展性。弊端:不能使用子类的特有成员。3.多态中的转型向上转型:父类型 对象名=new 子类名向下转型:子类型 对象名 = (子类型)父类引用;4.代码演示//猫类package comeon02;public class Cat extends Animal{ public Cat() {

2021-04-12 21:34:43 94

原创 有5个学生。请定义学生结构体,成员包括学号,姓名,成绩(整型),定义结构数组。

题目:有5个学生。请定义学生结构体,成员包括学号,姓名,成绩(整型),定义结构数组。1. 定义input()函数,输入5个学生的数据,要求问答式输入(即给出提示信息输入相应数据)。void input() { int i,j; for(i=0;i<5;i++){ printf("输入学号:"); scanf("%s",&s[i].sno); printf("输入姓名:"); scanf("%s",&s[i].name); printf("输入成绩:"); sca

2021-04-11 10:09:20 11246

原创 Java语言 学生信息管理系统

学生信息管理系统1.创建学生类,也就是学生的基本信息,可以用无参构造,也可以为有参构造;public class Student { private String number; private String name; private String age; private String Grades; public Student(){ } public Student(String number, String name, String

2021-04-10 23:06:42 402 1

原创 Latex 另起一段缩进,解决空白问题

Latex 另起一段缩进,解决空白问题1.一般的方法:两次回车,直接空两行就可以了2.遇到格式问题,可用以下方法解决a. 用mathtype生成空格的tex代码:{\rm{ }}b.加入换行符号:\c.缩进两个空格的代码如下,直接复制,防止出错\\ ${\rm{ }}$ ${\rm{ }}$ ${\rm{ }}$d.演示...

2021-04-02 22:35:13 6498 1

原创 Latex 加入表格,三线表,简单易懂

这里写目录标题一级目录二级目录三级目录一级目录二级目录三级目录

2021-04-02 20:46:25 1120

原创 Latex中加入算法伪代码模板,加行数,编号

Latex中加入算法伪代码模板1.加入包,一定放在 \begin{document}之前\usepackage{algorithm} \usepackage{algpseudocode} \usepackage{amsmath} \renewcommand{\algorithmicrequire}{\textbf{Input:}} \renewcommand{\algorithmicensure}{\textbf{Output:}} 2.加入模板快//以演示为目的\begin{a

2021-04-02 15:45:27 24204 2

原创 动态分区分配算法+实例详解

基于顺序搜索动态分区分配算法,只要把概念弄清楚,那么新进程的处理就很简单了。最佳适应(best,fit BF)算法所谓最佳,每次为作业分配内存时,总能把能满足要求,又是最小的空闲分配给作业。避免大材小用。主要做法:将所有的空闲分区按其从小到大排序,有新作业的时候,按从小查找,直到找一个可以满足此作业的分区大小。该算法保留大的空闲区,但造成许多小的空闲区。最坏适应(worst fit WF)算法最坏适应分配算法要扫描整个空闲分区或链表,总是挑选一个最大的空闲分区分割给作业使用。首次适应(first

2021-03-19 11:27:34 6315 2

原创 NP-hard类问题证明

NP-hard类问题:所有的非确定性多项式时间可解的判定问题构成NP类问题。证明1:问题A给定限制条件得到一个特例B问题证明2:问题B是NPC问题首先必须知道以下概念:1. P Problem如果一个问题可以找到一个能在多项式的时间里解决它的算法,那么这个问题就属于 P 问题,即算法的时间复杂度是多项式级的。比如 n n n 个数中间找到最大值,或者 n n n 个数排序之类的。2. NP ProblemNP 问题的另一个定义是可以在多项式的时间里猜到一个解的问题;很显然,所有的 P 类问题都

2021-03-15 22:22:18 1629

原创 C语言 strlen(str)和sizeof(arr)的区别

C语言 strlen(str)和sizeof(arr)的区别1. strlen()strlen(str):表示是运算符,而不是一个函数。sizeof返回的值表示的含义如下: 该函数实际完成的功能是从代表该字符串的第一个地址开始遍历,直到遇到结束符’\0’。返回的长度大小不包括’\0’数组——分配的数组空间大小; 指针——存储该指针所用的空间大小类型——该类型所占的空间大小; 对象——对象的实际占用空间大小; 函数——函数的返回类型所占的空间大小。函数的返回类型不能是void char

2021-03-13 16:01:31 2066

原创 Java / C语言 实现从键盘输入一些字符,统计字符串中的字母与数字的个数

从键盘输入一些字符,直到输入的字符是换行符“\n”,并统计字符串中的字母的个数和数字的个数。JAVA程序实现:public class day39 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("Enter the number of terms:"); String str = scan

2021-03-09 15:33:48 3752

原创 C语言,日历显示,年历显示,简单易懂

日历显示功能实现:1.输入一个年份,输出是在屏幕上显示该年的日历2.输入年月,输出该月的日历。3.输入年月日,输出距今天还有多少天,星期几,是否公历节代码实现:1.计算今天是星期几int CaculateWeekDay(int y,int m, int d) { if(m==1||m==2) { m+=12; y--; } int iWeek=(d+2*m+3*(m+1)/5+y+y/4-y/100+y/400)%7; // 计算今天是星期机 return iWeek;}

2021-03-08 19:17:19 5586

原创 C语言,商品购买,商店购物,通俗易懂

欢商品购买,实现以下功能1.输入商品信息,既菜单栏2.进行购买选择3.是否购买,然后更新实现代码如下:1.输入商品信息void InputCommodity() { printf("请输入商品名称\n"); char tmp[10]; scanf("%s",tmp); for(int i =0; i<count; i++) { if(strcmp(tmp,commodity[i].name)==0) { goods[sp].id = i; } } printf("

2021-03-08 18:43:52 4256

原创 七大排序完整篇,C语言实现,简单易懂

冒泡排序BubbleSort(T* d,const int n) { T temp; for (int i=0; i<n-1; i++) /* 外循环为排序趟数,len个数进行len-1趟 */ for (int j=0; j<n-1-i; j++) { /* 内循环为每趟比较的次数,第i趟比较len-i次 */ if (!comp(d[j],d[j+1])) { /* 相邻元素比较,若逆序则交换(升序为左大于右,降序反之) */ temp = d[j]; d[j

2021-02-14 11:23:43 248

C语言实现日历显示,显示界面,年月周选择性显示,计算剩余天数等

C语言实现日历显示,显示界面,年月周选择性显示,计算剩余天数;自动获取时间;可调试可运行。

2021-03-08

C语言实现商品购买,可运行可修改

一个简单的购物程序,可实现简单购买

2021-03-08

zip随机数_可调范围.zip

zipf随机数生成,可自由选择范围。有一个基本定律,就是大家常说对于内容的访问遵循80/20原则,也就是20%的内容,会占有80%的访问量。

2021-01-02

遗传算法01.zip

遗传算法解决0-1规划问题,可修改参数,可运行。本程序的实例是n维求和,已调试;修改参数即可运行。轮盘赌选择算发,交叉算法,变异算法,简单易懂

2021-01-02

空空如也

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

TA关注的人

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