![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
经验分享
文章平均质量分 82
有效的放假者
这个作者很懒,什么都没留下…
展开
-
通俗易懂帮你理清操作系统(Operator System)
概念(是什么)设计OS的目的(为什么)在开发角度,操作系统对外会表现为一个整体,类似于银行,银行其实是不能直接把各种设备和资源等暴露在外面,防止一些不法分子来进行破坏,那为什么不直接把银行封起来不让任何人进入呢?原因就在于银行存在的意义就是为人民服务,提供我们各种存取钱的需求,所以银行就用很多比较坚硬的玻璃封起来,然后下面开一个小口口来提供给我们各种服务,操作系统也是这样,它们本质上不相信任何人,不能把各种驱动和管理程序随意的暴露出来,也不能完全封如何理解 "管理"(怎么办)总结系统调用和库函数概念原创 2022-12-01 20:37:45 · 1221 阅读 · 0 评论 -
冯·诺依曼体系概括总结
对冯诺依曼的理解,不能停留在概念上,要深入到对软件数据流理解上,请解释,从你登录上qq开始和某位朋友聊天开始,数据的流动过程。从你打开窗口,开始给他发消息,到他的到消息之后的数据流动过程。补充:输入设备->内存的过程叫做INPUT,内存->输出设备的过程叫做OUTPUT,也就是io的过程。这里也是一样因为输入输出设备的反应速度与CPU的反应速度相差过于悬殊,而内存的反应速度介于两者之间,我们不常见的计算机,如服务器,大部分都遵守冯·诺依曼体系。截至目前,我们所认识的计算机,都是由一个个的硬件组件组成。原创 2022-11-21 23:17:59 · 275 阅读 · 0 评论 -
C++——日期类的实现
下面这里用一个数组代表12个月,还需要分辨一下是平年还是闰年2.全缺省的构造函数这里是全缺省日期类的构造函数,下面代码还检查了一下你构造的日期是否合理。3.打印函数4.拷贝构造函数4.赋值运算符重载下面的赋值重载自动把=左边的一个对象当作*this的对象,把右边的对象赋值给左边的对象,而且需要注意的是,赋值运算符是可以连续赋值的,我们设计函数的时候要把这一点考虑进去,返回值就要返回=左边的对象。5.析构函数对于日期类,没有空间的开辟(malloc等),其实不写也是可以的,但是如果写的话,原创 2022-10-17 23:01:03 · 867 阅读 · 0 评论 -
(C语言)数据结构——排序算法总结与比较
假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,r[i]=r[j],且r[i]在r[j]之前,而在排序后的序列中,r[i]仍在r[j]之前,则称这种排序算法是稳定的;否则称为不稳定的。有些排序算法无论如何都不能保证它是稳定的,那么它就是不稳定的但有些排序算法我们加以控制就可以保证他是稳定的,那么它就是稳定的第一次最坏移动一次元素,第二次最坏移动两次元素,以此类推,第n次最坏移动n次元素,所以计算公式为$(1+n)*n/2$近似等于O($n^原创 2022-09-22 17:13:02 · 706 阅读 · 2 评论 -
(C语言)数据结构二叉树之堆
前言:二叉树的顺序结构一、堆的概念及结构堆的性质:二、堆的实现1、堆向下调整算法2、堆向上调整算法3、堆的创建怎么求倒数第一个非叶子结点?4、建堆的时间复杂度5、堆的插入6、堆的删除7、堆的代码实现三、堆的应用1、堆排序2、TOP-K问题原创 2022-08-12 19:24:19 · 796 阅读 · 6 评论 -
(C语言)数据结构之栈和队列
栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。 一般用push表示。出栈:栈的删除操作叫做出栈。出数据也在栈顶。 一般用pop表示。...原创 2022-08-11 12:42:44 · 220 阅读 · 0 评论 -
(C语言)数据结构之栈和队列面试题
下一次想出栈的时候就再倒一次,也就是把q2的前n-1个元素出队并入队到q1,然后q2把剩下的那个元素出队即可,此时q2为空下一次再入栈的时候,也就不用管q1还是q2,就直接谁有元素就往谁的里面入队元素即可。每次入队的时候先要判断当先队列是否是满的,不为满,让back当前位置赋值要入队的元素,然后back正常++往后走,关键的来了再进行back=back %(k+1)操作即可实现循环。为了满足栈的特性,即最后入栈的元素最先出栈,在使用队列实现栈时,应满足队列前端的元素是最后入栈的元素。...原创 2022-08-11 12:38:48 · 847 阅读 · 0 评论 -
(C语言)顺序表和链表
线性表(linear list)是n个具有相同特性的数据元素的有限序列。顺序表、链表、栈、队列、字符串。线性表在逻辑上是线性结构,也就说是连续的一条直线。但是在物理结构上不一定是连续的, 线性表在物理上存储时,通常以数组和链式结构的形式存储。顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构,一般情况下采用数组存储。在数组上完成数据的增删查改。静态顺序表:使用定长数组存储元素。动态顺序表:使用动态开辟的数组存储。......原创 2022-08-09 11:54:22 · 655 阅读 · 0 评论 -
(C语言)干货满满!!!面试必备OJ题:链表篇(二)
通过计算A链表和B链表的差值的绝对值,让长的那个链表先走差值的绝对值步,最后两个链表再同时往前遍历,判断longlist和shortlist是否的地址相同,一旦相同就说明当前地址是两个单链表相交的起始节点,返回此时的地址即可。解法一:普通解法,如果有环的情况下,定义一个快慢指针,从头开始往后先找在环中相遇的结点,然后将此处的结点的next置为NULL,相当于断开当前的环,那么就是前面的相交链表问题了。1、先找到整段链表的中间结点,奇数个就是最中间的那个结点,偶数个的话就是中间两个的第二个。.........原创 2022-08-09 11:50:00 · 353 阅读 · 1 评论 -
(C语言)干货满满!!!面试必备OJ题:链表篇(一)
这篇博客总结了几个比较常见的有关单链表的面试题,个人觉得题目比较好也比较经典,特地拿出来与小伙伴们分享。原创 2022-08-07 23:19:31 · 1102 阅读 · 0 评论 -
(JavaSE)方法重载
请看下面的代码一个方法(函数)一个方法名(函数名)的代码确实可以解决问题,但不友好的地方是需要提供许多不同的方法名,取名字本来就是让人头疼。那能否将所有的名字都给成add呢?原创 2022-07-31 20:42:24 · 153 阅读 · 0 评论 -
(javaSE)经验分享
这样的程序在java中是不允许的,因为后面a-b会进行类型提升,整体提升成long类型,而long类型的值是不能赋值给int类型的变量,要进行类型转换,idea会提醒你进行类型转换,改成下面这两种写法就可以了,实际上下面的两种写法是等价的,在这个例子中,a=(int)(a-b);就等价于a-=b;编译器会进行自动转换。3、java里只有无符号右移>>>和左移这三种移位运算符。1、switch(){}结构中,括号中可使用的数据类型不能是()。2、看下面这样一段程序。............原创 2022-07-29 16:58:29 · 141 阅读 · 0 评论