- 博客(95)
- 收藏
- 关注
原创 计算机网络——1.1计算机网络概述
计算机网络到底是个啥?要回答这个问题,我们就不得不提到一位…我就不提(哎就是玩)不说那些有的没得,我们直入主题,计算机网络,其实就和邮件通信系统是同一个模子里刻出来的,我们邮件通信需要有发送端,也需要有接收端,当然,在它们两之间,还需要有一个信道的连接,这个信道可能是邮件车开过来的高速公路,也可能是别的,总之,它是一个传输信息的通道。那计算机网络也是如此,在计算机网络中,发送端和接收端都可以统称为通信设备,而上面传输邮件的通道则是通信线路,也就是信道啦。
2024-11-10 13:11:50
1019
原创 操作系统考纲整理
是指控制和管理整个计算机系统的硬软件资源,合理组织,调度工作和资源分配,并于用户和其他软件提供接口和环境的程序。是计算机系统中最基础的软件。
2024-01-15 10:59:48
1599
原创 操作系统经典互斥问题哲学家就餐问题
该问题描述的是五个哲学家共用一张圆桌,分别坐在周围的五张椅子上,在圆桌上有五个碗和五只筷子,他们的生活方式是交替的进行思考和进餐。平时,一个哲学家进行思考,饥饿时便试图取用其左右最靠近他的筷子,只有在他拿到两只筷子时才能进餐。,也就是拿起一只筷子后,切换到了第二位哲学家的进程,而他也在执行了同样的操作后切换到了第三个哲学家,以此类推。此外,每位哲学家只有在手上有一双筷子(两只)才能进餐,因为这筷子不是简单的单一信号量,而是应该用数组新式表现出来。在此处,筷子是互斥的信号量,在同一时间只能由一双筷子被使用。
2023-08-20 14:46:48
521
原创 操作系统经典同步问题——读者写者问题
对于这一问题,有一个显著的特征,就是一个互斥访问的计数器count,这样一个计数器变量的互斥访问,能够实现某些进程同步的同时又与其他进程异步的情况,因此当碰到一个不太好解决的互斥问题时,可以考虑用这样的思想解决问题。此时该同步问题能够得以实现,但存在一个进程饥饿的问题,假设存在着源源不断的读进程,那只要不是最后一个读进程,写进程就不能进行,最终会导致饿死。那我们可否考虑一种解决方案,增加一个计数变量,当该进程是第一个读进程时,阻止写进程写,直到最后一个读进程,才允许写进程写。2.只允许一个写者进程写操作。
2023-08-18 14:25:47
1104
原创 操作系统经典同步问题——生产者-消费者问题
一组生产者进程和一组消费者进程共享一个初始为空、大小为n的缓冲区,只有缓冲区没满时,生产者才把消息放入缓冲区,否则必须等待;首先,在操作系统中的异步指的是进程以不可预知的速度前进,举个例子来说,我想打LOL,需要我先打开客户端登陆,才能打LOL,因此打LOL这个动作要发生在客户端登陆之后,这就是所谓同步(用于进程间的相互制约)。互换顺序,先对mutex进行P操作,再对full执行P操作,转换成人话就是在说:我先进入了临界区,但我就是不出去,与此同时我又申请了空闲的缓冲区,因为缓冲区均满,所以。
2023-08-13 13:39:17
658
原创 用C++语言通过栈实现中缀转后缀表达式(逆波兰式)
运算符写在操作数的后面的表达式,方便计算机读取。此处,我们通过栈实现中缀转后缀表达式的代码。为一个中缀表达式,它转成后缀表达式应该是*2963/+5-4+如上我们可以注意到,在转换成后缀表达式后,括号将会消失。其余的操作和运算符的优先级有关系。
2023-05-03 20:12:27
469
原创 LeetCode-相交链表
用数组的思维来想这一道题,其实就是在寻找两个数组中第一个相同的元素,并返回这个元素.但链表不同于数组,只能参考大致思路.由理解1和链表的定义(因为c1如果要找前一个元素能找到两个)可知不存在这样的结构。
2022-09-02 09:39:33
305
原创 LeetCode-高度检查器
题目说的复杂,用自己话说就是看这个队伍里有多少人没有按序排队,要求的就是这些人的数量那么解题步骤如下JS代码写这一句话是因为直接将数组赋给新数组,在JS中属于浅拷贝,也就是两个数据连体,一变都变.这一句话的作用是将其变成深拷贝的形式,也就是两个不相干的数组...
2022-06-18 17:13:30
216
原创 LeetCode-按奇偶排序数组
来源:力扣(LeetCode)分析题目可知那么使用JS就很好写了两个方法头部插入数据,与其相反,即为头部删除尾部插入数据,也算是与相反那么C语言也可以用同样的思路,其实就是双指针,一个指向开头,一个指向结尾进阶由题可得...
2022-06-11 17:42:20
1624
原创 LeetCode-自除数
思路如下:这题用JS有几个核心的方法如果后面不给指定参数,那么就会将该字符串直接转成数组.例如:因此可以拿它来转换数组every是在所给用力能满足所有的测试,才返回true,否则是falsesome和它相反...
2022-06-03 19:30:31
1452
原创 ES6-4.对象扩展
ES6-4.对象扩展属性的简洁写法属性名表达式总结属性的简洁写法以前写属性和值相同的写法现在写属性和值相同的写法这里的{top}就等价于{top:'top'},属性名和值都是它对于对象原来使用对象将其打印输出,仅仅只会显示其内容,而不能区分是哪一个对象但在使用了属性的简介写法后,能够实现让代码更加简洁清晰属性名表达式在之前,我们只能使用一种方法定义对象的属性,也就是.的形式ES6后,可以使用属性表达式作为对象的属性,当然最常见的属性表达式的使用应该是下面这样这里就是循
2022-06-01 13:49:53
126
原创 每周算法题(C语言亲密数对)
C语言 寻找亲密数对亲密数对:如果a的所有正因子和等于b,b的所有正因子和等于a,因子包括1但不包括本身,且a小于b,则称a,b为亲密数对。该数对是在3000以内例如:输入:300输出:220和284分析题目,想出以下思路:a和b都是3000以内穷举a在3000以内(或穷举b在3000以内)通过a的因子和,作为判断b的因子和的依据求出b的因子和与a判断void main(){ int a, b, factorb,factor; for ( a = 1; a < 300
2022-05-28 19:20:19
2844
1
原创 ES6-3.解构赋值
解构赋值是一种对赋值运算的扩展,可以一次性对多个变量赋值ES6-3.解构赋值对象解构数组解构剩余运算符结合解构常见用途总结对象解构这是常见的解构赋值形式,其实就相当于是let name=obj.namelet age=obj.age因此,不能通过其他不同名的变量赋值这样是找不到所对应的变量这种从相应位置一一获取到数据的解构方式为全部解构数组解构对于数组解构也是一样剩余运算符结合解构使用剩余运算符也可以实现解构使用默认值也可以实现解构注意:不要写歪了当然也.
2022-05-27 17:31:01
111
原创 ES6-2.函数默认值,扩展运算符,剩余参数,箭头参数
ES6-2.函数默认值,扩展运算符,剩余参数,箭头参数这里写目录标题ES6-2.函数默认值,扩展运算符,剩余参数,箭头参数函数默认值剩余参数扩展运算符箭头参数总结函数默认值在ES6前,使用函数默认值我们常用以下的判断操作,目的是为了保证数据不出undefined.在许多情况中,一个空值或者是undefined都将会导致整个程序故障function fun(a,b){ let num1=a||10; let num2=b||20; return num1+num2;}fun(10,30)-
2022-05-26 16:57:36
117
原创 ES6-1.let和const
ES6-1.let和constvarvar的等级提升let特点1-局部有效特点2-限制作用域,必须先声明后使用特点3-不允许重复声明同一个变量const总结var在说ES6前,先来看一下ES5中声明变量的方式-var,有什么缺陷,没有缺陷,就不需要其他的了function fun(){ console.log(item); var item = 50;}这里正常人来看都应该要报错,结果他却输出了undefinedfunction fun(){ var arr = [] for
2022-05-24 17:27:02
154
原创 有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13... 求出这个数列的前20项之和编写一个程序段,输出如下菲波那契数列的前20项,并求其和。1,1,2,3,5,8,13……
每周算法文章目录每周算法有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13... 求出这个数列的前20项之和编写一个程序段,输出如下菲波那契数列的前20项,并求其和。1,1,2,3,5,8,13……总结有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13… 求出这个数列的前20项之和需要注意的点必须实数相除,整数相处只会出整数void main(){ double sum=0.0; double num1=2.0,num2=1.0; double tem
2022-05-14 22:33:02
2586
原创 每周算法题(猴子吃桃问题,有1020个西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天以后能卖完.)
系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录系列文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例
2022-05-07 13:45:19
2931
原创 每周算法题(从三个红球、五个白球、六个黑球中任意取出八个球,且其中必须有白球,输出所有可能的方案,有1、2、3、4数字,组成无重复的三位数两个乒乓球队进行比赛,各出三人。甲队为a,b,c)
每周算法题文章目录每周算法题一、从三个红球、五个白球、六个黑球中任意取出八个球,且其中必须有白球,输出所有可能的方案。二、有1、2、3、4数字,组成无重复的三位数两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。总结一、从三个红球、五个白球、六个黑球中任意取出八个球,且其中必须有白球,输出所有可能的方案。根据题意红球的数从0-3不等白球的数从1-5不等(因为必须有白球)黑球的数从0-6不等只有当球的总数是8时,才是可行的方案代码如下void main(
2022-04-30 16:43:03
4886
原创 C语言经典回文数三种求法
回文数概念回文数实际上就是倒着读和正着读都一样的数.如12321,正读和倒读都是一样的,这就是回文数,也叫做逆序数题目:求一个五位数判断是否为回文数第一种思路把五位都求出来,拿个位和万位比较,拿十位和千位比较是否相同int judge_ReversedNum(int num){ int ge, shi, qian, wan; ge = num % 10; shi = num / 10 % 10; qian = num / 1000 % 10; wan = num / 10000;
2022-04-23 17:07:31
46139
4
原创 一道理解一级指针和二级指针的题目
void fun(int *a, int *b, int *c) { int *temp; temp=a; a=b; b=temp; *temp=*b,;*b=*c; *c=*temp; } void main() { int a,b,c,*p1,*p2,*p3; a=5; b=7; c=3; p1=&a; p2=&b; p3=&c; fun(p1,p2,p3); printf("%d,%d,%d\.
2022-04-09 17:03:21
1188
原创 一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如 6=1+2+3, 编程找出 1000 以内的所有完数。
一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如 6=1+2+3,编程找出 1000 以内的所有完数。其实这和素数有些相似之处,素数是不能被除1和本身以外的数整除,而这个完数是能被整除的数加起来等于它思路如下要知道1000以内的数,就必须遍历1-1000每次遍历完一个数,判断因子之和是否为完数后,需要将因子之和清零给下一个数判断一个数的因子一定小于这个数,所以遍历1-这个数void getPerfectNum(){ for (int i = 2; i <= 1000; i
2022-04-03 15:19:59
19770
原创 C语言求最大公约数,最小公倍数
什么是约数约数,又称因数。整数a除以整数b(b≠0) 除得的商正好是整数而没有余数,我们就说a能被b整除,或b能整除a。a称为b的倍数,b称为a的约数。—选自百度百科通俗的理解就是18%2==0,因此2就是18的约数,或叫做因数那么公约数,其实就是几个数公有的约数.比如18和2的公约数,除了1以外,还有就是2了,而在这两个约数中,最大的是2,因此在这里2就是他们的最大公约数最大公约数求法(辗转相除法)假如需要求 12 和 8两个正整数的最大公约数,用欧几里得算法,辗转相除法,是这样进行的:
2022-03-19 20:27:09
1356
原创 C语言中的printf使用
今天来讲一下C语言中输出语句printf的使用格式控制符格式控制符是printf中最重要的东西,其中我常见的%d,%c,%f,%lf,%s都属于格式控制符的一种,接下来讲点不太常见,但是考试很喜欢考的指定宽度和小数精度(如果是浮点数)形式:printf("%5d",123);意思是输出一个东西占五个空格的位置,如果这个数没有满五个,那么就会补空格,至于在哪里补,请看下面在格式控制符前加上+或-其中我们平时输出一个整形的数都是用的(+)%d,只是因为+就是默认的,所以可以不写,而默认的情况就
2022-03-13 19:43:13
5509
1
原创 将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5
将一个正整数分解质因数。例如:输入90,打印出90=233*5质因数,其实就是除1和本身以外能够被这个正整数分解的因数,说人话就是除1和本身以外能被除尽的,就是这个数的质因数注意点质因数是有可能重复的. 如:45的质因数,第一个是3,那么45/3=15后,发现还是3每一次分解完之后,下一次判断质因数应该是应该是在这个正整数除去它其他因子的基础上的. 如:90,第一个质因数是2,那么第二个质因数就需要90/2=45,在45的基础上再做判断到最后不能再分解时,那个数本身就应该是一个质因数.如
2022-03-02 20:27:14
1909
1
原创 计算机基础——6.2 数据库
数据库定义长期存放在外存上的有组织,可共享的相关数据集合数据库是很大的,因此不可能存放在内存中,而且,如果存放在内存中,那么断电就丢失了,会有用户找你麻烦的。同时,数据库也是可以共享的,因为管理者也能看到其他数据库里的数据数据库基础特点数据结构化数据共享性高冗余度低(零冗余做不到)数据独立性强数据统一管理和控制数据的结构化,就是让数据彼此之间产生联系,发生关系。例如,我想让我同学知道谁才是他爹,这就是让彼此间产生联系数据共享已经讲过冗余度,写过代码的话,其实就是重复
2022-02-28 11:13:26
1858
原创 计算机基础——6.1计算机信息系统
计算机信息系统定义以提供信息服务为主要目的数据密集型,人机交互的应用系统信息系统就是一个将各种服务及于一身的系统,就像是四个辅助你一个的感觉.特点数据量大数据持久数据共享服务多样这个系统数据量一定是很大的,不然存不下那么多服务.同样,也是很持久的,不能说一会就没了,那么数据一会就丢失,这系统就没有了意义.因此,可以从这两点判断出,这个信息系统,应该是存放在外存中的,因为外存是断电后不会丢失的,而如果你是服务器,数据一断电就丢失,那用户不得骂死你吗.数据共享也是非常重要,计算
2022-02-28 11:13:09
744
原创 计算机基础——5.4 数字音频及应用
声音信号的数字化过程取样声音声波频率范围为声音的带宽全频带声音带宽——20Hz-20KHz言语/语音——300-3400Hz音乐的取样频率——40KHz语音的取样频率——8-16KHz量化(A/D转换)量化精度越高,声音的保真度越好,噪音越低编码取样要取声音,而声音有最大的范围,因此你要取这个声音就必须要在最大范围开始取。所以取样频率都是原最大频率范围的两倍量化就是模拟转数字的操作.自然是转的越多,越细,质量越好波形声音获取设备麦克风——将声波
2022-02-28 11:08:48
2581
原创 计算机基础——5.3 数字视频及应用
常见视频中国采用PAL制式的彩色电视信号-帧频25FPS人眼对亮度信号变化的敏感程度较高,所以色度信号取样频率可以比亮度信号取样频率低一些PAL是一种电视标准,它的帧频也就是我们常看到的FPS,25帧,其实现在早已经不是25帧了,25帧我们根本就看不下去.因为我们人对亮度比对色度要更加敏感,所以可以适当减少视频色度数据量而非亮度视频信号的数字化相关设备视频采集卡(视频卡)数字摄像头数字摄像机视频卡并不是我们常说的显卡,它不是一个东西,其他比较常见数字视频编码标准MP
2022-02-27 13:47:52
383
原创 计算机基础——4.3 互联网的组成
互联网基本概念互联网是覆盖全球的最大的计算机广域网TCP/IP协议系列——TCP-传输控制协议,IP——网际协议互联网就是Internet,是全球最大的广域网TCP/IP协议其实是一堆协议的协议簇,其中最重要的是TCP和IP,IP是最最核心由此可见,TCP/IP模型分为网络接口层(数据链路层),网络互连层,传输层,和应用层网络接口层中有着网卡,因此也有着MAC地址。其中网桥工作在网络接口层,其实就是多个网络互联设备之间的桥梁。就是用来使别的机子能够识别的网络互连层,将底层不同的物理
2022-02-27 13:47:32
1036
原创 计算机基础——4.5 互联网提供的服务
电子邮件E-mail邮箱地址邮箱地址为邮箱名@邮箱所在的主机域名123456789@qq.com这就是一个邮箱地址,没啥好说的邮件组成邮件由头部,正文,附件组成关于电子邮件的协议MIME(多用途网际邮件扩充协议)SMTP(简单邮件传输协议)POP3(邮局协议版本3)IMAP4(因特网消息访问协议4)其中,有了MIME,我们才能在邮件中发送图片,音频,甚至视频等文件.而SMTP用来发送邮件,POP3和IMAP4用来接收邮件.信息服务WWW超链接超链接由链源和链宿组
2022-02-27 13:46:47
406
原创 计算机基础——4.4 网络信息安全
网络信息安全概述没有绝对安全的网络网络不是法外之地,没有绝对安全的网络,网络上都有着风险,大家应该都心知肚明。安全措施真实性鉴别本人知道的信息口令验证码本人具有的信物磁卡IC卡本人具有的生理特征指纹虹膜访问控制真实性(身份)鉴别是访问控制的基础数据加密——在网络通信被窃听的情况下仍然保证数据的安全数据完整性——保护数据不被非法修改,使数据在传送前后保持完全相同数据可用性——任何情况下都不会丢失防止否认真实性鉴别又叫身份认证,就是认证你是不
2022-02-27 13:46:35
372
原创 计算机基础——4.2 计算机网络基础
计算机网络计算机网络组成由主机(终端设备),一个通信子网,一组通信协议组成或者说,由资源子网和通信子网组成协议三要素:语义,语法,同步(时序)主机自然就是我们的电脑,不必多说通信子网主要负责全网的通信,没有它,网络也就没有了意义通信协议就是计算机网络中的法律规则,通常指的是交换数据的规则语义指的就是what,你要对什么东西进行操作。语法就是how,怎么操作,同步(时序)就是when,你要什么时候操作.总结来说,就是我要在晚上打开LOL,打一盘三炮,甩一套QWER。计算机网络的拓扑结
2022-02-27 13:46:20
1304
原创 计算机基础——4.1 数字通信入门
现代通信定义:使用电波或光波传递信息的技术(电信)现代通信是要用电或光传递信息的,利用书,报,光盘等传递信息不是通信基本原理通信三要素:信源,信道,信宿信源就是发送信号的终端,信道就是传输的介质或是传输媒介,信宿就是收信号终端就是打LOL,我们家基地就是信源,发送小兵到信道,也就是召唤师峡谷,目标就是对面基地,也就是信宿电(光)信号形式,数字信号,模拟信号数字信号是一种不连续的脉冲序列,模拟信号是一种连续变化的曲线图数字信号常用于计算机中,或者说,计算机中传输的都是数字信号。
2022-02-27 13:46:10
2806
原创 计算机基础——3.3 算法与程序设计语言
程序,算法和数据结构尼.沃思提出,程序=数据结构+算法软件的主体是程序,程序的核心是算法,而算法建立在数据结构基础上程序是软件的核心,这毋庸置疑.而算法是程序的核心,因为没有算法,你写不出一个程序,任何合理的程序都应该有一个或多个算法,而数据结构是算法的核心.数据结构就是数据存储的方式,只有先存好数据,才能研究算法.就好比写C语言程序,先要定义变量,再执行语句算法即为解决问题的方法和步骤算法特点确定性有穷性能行性至少一个输出确定性实现的每一个操作含义必须明确,无二义性.不要
2022-02-27 13:45:53
5385
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人