自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 死锁概述与总结

一、死锁的引入顾名思义,死锁死锁肯定与锁有关,我们知道引入锁又是为了解决多进程或多线程之间的同步与互斥问题,那么到底怎样的情形才会产生死锁呢? 典型的两种死锁情形: (一)线程自己将自己锁住 一般情况下,如果同一个线程先后两次调用lock,在第二次调⽤用时,由于锁已经被占用,该线程会挂起等待占用锁的线程释放锁,然而锁正是被自己占用着的,该线程又被挂起而没有机会释放锁,因此 就永远处于挂起等待状

2017-05-30 13:34:14 6522 1

原创 生产者消费者模型

一、概念引入日常生活中,每当我们缺少某些生活用品时,我们都会去超市进行购买,那么,你有没有想过,你是以什么身份去的超市呢?相信大部分人都会说自己是消费者,确实如此,那么既然我们是消费者,又是谁替我们生产各种各样的商品呢?当然是超市的各大供货商,自然而然地也就成了我们的生产者。如此一来,生产者有了,消费者也有了,那么将二者联系起来的超市又该作何理解呢?诚然,它本身是作为一座交易场所而诞生。将上述场景例

2017-05-28 21:02:50 9140

原创 Linux环境搭建(vim,makefile,gdb...)

1、vim(编辑器)的使用 vim是vi的升级版本,二者都是多模式编辑器,vim兼容了vi的所有指令,同时还增加了一些新的特性在里面。 vi的三种基本模式:(vi有很多种模式,目前仅需掌握这三种) 1》命令模式:控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入其他两种模式的中间模式。 2》插入模式:进行文字的输入,按【ESC】回到命令模式。 3》底行模式:将文件保存或退出vim

2017-05-22 15:44:09 2008

原创 linux常见指令以及权限理解

1、计算机的五大单元: 输入单元:包括键盘,鼠标,扫描仪,手写板等。 中央处理器(CPU):含有算术逻辑,控制,记忆等单元。 输出单元:显示器,打印机。 注意:存储器☞内存,CPU只能与内存打交道2、环境变量的概念 PATH指定命令的搜索路径 HOME:指定用户的主工作目录 LOGNAME:☞当前用户的登录名 SHELL:☞当前用户用的哪种shell修改和查看环境变量的命令:

2017-05-18 13:56:43 1763

原创 Linux下的文件描述符与文件指针

文件描述符通常说,在Linux系统中一切皆文件。当然,设备也不例外,如果要对某个设备进行操作,就不得不打开此设备文件,打开文件就会获得该文件的文件描述符fd(file discriptor),它是一个很小的整数。每个进程在PCB(Process Control Block)中保存着一份文件描述符表,文件描述符就是这个表的索引,每个表项都有一个指向已打开文件的指针。 图中,文件描述符即为文件描述

2017-05-07 13:30:01 1324 1

原创 二叉树的经典面试题总结

1、二叉树的构造 2、遍历二叉树 3、求二叉树的高度(深度) 4、求二叉树中节点的个数 5、求二叉树中叶子节点的个数 6、求二叉树第K层的节点个数7、判断一个节点是否在二叉树中 8、求两个节点的最近公共祖先9、判断一棵二叉树是否是平衡二叉树10、求二叉树中最远的两个节点的距离 11、由前序遍历和中序遍历重建二叉树12、判断一棵树是否是完全二叉树13、求二叉树的镜像14、二叉搜索树->有序双链表

2017-05-04 16:20:45 9133 1

原创 栈和队列的常见面试题

1、两个队列实现一个栈 两个队列实现一个栈2、两个栈实现一个队列 【算法思想】 1>设计类 成员变量:给两个栈s1和s2来模拟实现一个队列 成员函数:入队Push()和出队Pop() 2>给两个指向栈对象s1、s2的指针input和output,分别用来入队和出队 3>按照先进先出的方式模拟入队和出队操作 Push:将input指向不空的栈,然后在input中入队 Pop:将inp

2017-05-04 14:06:43 3836

原创 大数运算(加减乘除)

大数运算的实现方法主要有以下几种: 1) 用字符串表示大数。将大数用十进制字符数组表示,然后按照“竖式计算”的思想进行计算。这种方法比较容易理解,但是计算效率比较低。 2) 将大数看成二进制流进行处理。使用各种位运算和逻辑操作来实现打算的运算。该方法设计复杂,可读性较差,而且难以调试。 3) 将大数表示成一个n进制数组。n的取值越大,数组的大小越小,这

2017-05-02 14:38:48 23554 3

Effective C++第三版及详细笔记

内容简介:有人说C++程序员可以分为两类,读过Effective C++的和没读过的。当您读过《Effective C++:改善程序与设计的55个具体做法(第3版)(中文版)(双色)》之后,就获得了迅速提升自己C++功力的一个契机。

2018-10-16

空空如也

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

TA关注的人

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