- 博客(21)
- 收藏
- 关注
原创 剑指0ffer面试题3:二维数组中的查找
//*******************************二维数组中查找一个数**********************************//题目要求:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的// 顺序排序,请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数// 找到则返
2016-07-21 12:32:30 536
转载 IP分片原理&分析
分片是分组交换的思想体现,也是IP 协议解决的两个主要问题之一。在IP 协议中的分片算法主要解决异种网最大传输单元(MTU) 的不同. 但是分组在传输过程中不断地分片和重组会带来很大的工作量还会增加一些不安全的因素。什么是IP分片 IP分片是网络上传输IP报文的一种技术手段。IP协议在传输数据包时,将数据报文分为若干分片进行传输,并在目标系统中进行重组。这一过程称为分片( fra
2016-07-20 19:11:55 3932
原创 守护进程 & 创建守护进程 & fork一次和fork两次的区别
我们先来了解一下什么是守护进程?守护进程也称精灵进程(Daemon),是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。守护进程是生存期长的一种进程。它们常常在系统引导装入时启动,仅在系统关闭时才终止。因为它们没有控制终端,所以说它们是在后台运行的。守护进程的特点:(1)Linux系统启动时会启动很多系统服务进程,守护进程没有控制
2016-07-20 14:09:15 6238 3
原创 Linux:死锁的产生的场景&如何避免死锁&死锁产生的必要条件
既然我们要研究死锁,那就得先知道死锁产生的原因?死锁产生的原因:(1)因为系统的资源不足,不能满足进程的资源请求,会导致多个线程同时争夺一个资源(2)进程运行推进的顺序不合适(3)资源分配不当,和第一个一样,有的进程分配的资源太少,会因为争夺资源而陷入死锁死锁产生的场景:(1)多个线程:彼此申请对方资源而导致的死锁,A申请B的锁的时候,因为锁被占用所以会把A挂起等待B释
2016-07-16 09:50:05 1111
原创 平衡二叉树:左单旋&右单旋&左右单旋&右左单旋 遇到的问题&解决方法
为什么要引入旋转这一说法呢?因为在建立平衡二叉树,插入二叉树节点的时候,如果发现平衡因子不是-1,0,1的时候就会进行调整,而平衡因子是判断一个二叉树的每层是否平衡的数据在进程调制的时候就会有左单旋,右单旋,左右旋转,右左旋转,通过这四种旋转来使得不管插入多少数据都可以保持平衡二叉树的特点对着四种旋转方式,我们以图的方式来进行理解:(图中的节点标记单词用于理解源代码)
2016-07-06 15:13:03 2934 2
原创 小项目--迷宫
#define_CRT_SECURE_NO_WARNINGS1#include#include#include#includeusingnamespacestd;voidInitMaze(int*maze,size_tn){ assert(maze);
2016-07-04 16:01:20 735
原创 不使用库实现队列的基本操作
templatetypenameT>structNode{public: Node(constT&d) :_data(0) , _next(NULL)
2016-07-04 15:44:13 346
原创 不使用库实现栈的基本操作
templatetypenameT>classStack{public: Stack() :_a(NULL) , _size(0) , _cap
2016-07-04 15:43:07 297
转载 操作系统的作业调度和进程调度算法
作业调度:所谓作业调度是指按照某种原则,从后备作业队列中选取作业进入内存,并为作业做好运行前的准备工作以及作业完成后的善后处理工作。设计作业调度算法时应达到如下目标:(1) 某段时间内尽可能运行更多的作业,应该优先考虑短作业。(2) 使处理机保持繁忙,应该优先考虑计算量大的作业,即计算型作业。(3) 使I/O设备保持繁忙,应该优先考虑I/
2016-07-04 12:40:18 4010
原创 快速排序的实现--挖坑法
//*********************挖坑法(快排的一种实现方式)************************intPartSort(int*a,intleft,intright){ intkey =a[right]; intbegin =left;
2016-07-03 21:03:11 1641
原创 快速排序的优化--三数取中法
//*********************三数取中法(快排的优化)****************************//未优化|我们总是把数组尾元素固定为key的值,然后通过调整让key回到它正确的位置//前快排|然后以key为中心,把数组划分为key左边和key右边两个区域,然后继续在左边//的缺陷|和右边划分区域,直到最后区域里没有元素或者只有一个元素的时候,排序结束
2016-07-03 21:00:39 5721 2
原创 快速排序的递归写法
//*****************************快速排序(递归)****************************//递归思想:单趟来说,begin找比key大的,end找比key小的,当各自都找到的时候,// 若begin比end小,则交换两个数据,然后继续找,当再找到的时候,如果// begin比end大,则比较a[begin
2016-07-03 20:56:34 542
原创 希尔排序
//*****************************希尔排序****************************//思路:把数据分为几组,每组有gap个数据,gap可以是固定的,也可根据// 数组的大小来变动,做法和插入排序一样,只是每次数据后移时要后移// gap个位置,end--的时候也要移动gap个位置//NOTE:end+gap不能超过数组
2016-07-03 20:54:12 228
原创 Linux环境下写一个进度条
源代码:void prog(){ char prog_buf[102]; memset(prog_buf,'\0',sizeof(prog_buf)); char *sign="|/-\\"; //在进度条推进的时候,光标在以顺时针旋转 int i=0; for(i=0;i { prog_buf[i]='=';
2016-07-01 15:16:33 340 1
原创 Linux中想进入一个目录、 在目录下创建文件、在文件内部删除文件 各需要什么权限?
1.想进入一个目录需要什么权限?首先我们在超级用户下创建一个dir_root目录,并且取消它的所有权限chmod 000 dir_root当我们想进入dir_root目录下的时候,发现就算dir_root对拥有者没有读、写、可执行权限,超级用户依然可以进入目录当我在超级用户下把目录dir_root的拥有者改为普通用户fanny,且目录对拥有者(普通用户)
2016-07-01 12:10:09 9159
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人