自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 进程间通信的方式

无名管道( pipe ):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。 高级管道(popen):将另一个程序当做一个新的进程在当前程序进程中启动,则它算是当前程序的子进程,这种方式我们成为高级管道方式。 有名管道 (named pipe) : 有名管道也是半双工的通信方式,但是它允许无亲缘关系进程间的...

2018-09-12 11:06:09 229

原创 八大排序算法

1.插入排序插入排序是一种最简单直观的排序算法,它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。算法步骤:1)将第一待排序序列第一个元素看做一个有序序列,把第二个元素到最后一个元素当成是未排序序列。2)从头到尾依次扫描未排序序列,将扫描到的每个元素插入有序序列的适当位置。(如果待插入的元素与有序序列中的某个元素相等,则将待插入元素插入...

2018-09-03 10:29:07 126

转载 操作系统常见的算法

常见的批处理作业调度算法1.先来先服务调度算法(FCFS):就是按照各个作业进入系统的自然次序来调度作业。这种调度算法的优点是实现简单,公平。其缺点是没有考虑到系统中各种资源的综合使用情况,往往使短作业的用户不满意,因为短作业等待处理的时间可能比实际运行时间长得多。2.短作业优先调度算法(SPF): 就是优先调度并处理短作业,所谓短是指作业的运行时间短。而在作业未投入运行时,并不能知道它实...

2018-08-31 10:25:33 1463

原创 C++ STL 容器(vector,list,deque,stack,queue,priority_queue,set,map)

序列式容器vector:动态空间,随着新元素的加入,它的内部机制会自行扩充空间以容纳新元素;  它采用的数据结构是线性连续空间(push_back,pop_back,erase,clear,insert) list:环状双向链表,每次插入或者删除一个元素就配置或者释放一个空间,对于空间的利用有绝对的精准,一点也不浪费,而且对于插入和删除,list永远是常数时间;list的节点不保证在储存空间中...

2018-08-06 17:15:32 269

转载 内存管理

对于计算机系统而言,操作系统充当着基石的作用,它是连接计算机底层硬件与上层应用软件的桥梁,控制其他程序的运行,并且管理系统相关资源,同时提供配套的系统软件支持。对于专业的程序员而言,掌握一定的操作系统知识比不可少,因为不管面对的是底层嵌入式开发,还是上层的云计算开发,都需要使用到一定的操作系统相关知识。 内存管理有哪几种方式 分段和分页的区别是什么 什么是虚拟内存 什么是内存碎片什么...

2018-07-29 09:49:15 175

转载 内存段/页式管理

一 页式管理 1 页式管理的基本原理将各进程的虚拟空间划分成若干个长度相等的页(page),页式管理把内存空间按页的大小划分成片或者页面(page frame),然后把页式虚拟地址与内存地址建立一一对应页表,并用相应的硬件地址变换机构,来解决离散地址变换问题。页式管理采用请求调页或预调页技术实现了内外存存储器的统一管理。 它分为 1 静态页式管理。静态分页管理的第一步是为要求内存的作业或...

2018-07-29 09:29:44 182

原创 在浏览器上输入一个网址得到页面的过程

1.解析:输入域名会对域名进行解析,得到对应的IP地址,访问域名,其实访问的是域名对应的IP地址;解析过程步骤如下(前一步没找到才进行下一步):       (1)查找浏览器的dns缓存;       (2)查找计算机的dns缓存;       (3)查找路由器的dns缓存;       (4)查找互联网服务提供商dns缓存;       (5)从根域名服务器开始递归搜...

2018-07-21 15:46:11 703

原创 关于sizeof()和strlen()的区别理解

1.sizeof是运算符,而strlen是函数;2.strlen得到的实际字符串的长度,sizeof得到的是字符分配的字节大小;     eg: char str[20]="hello";          sizeof(str)=5*4=20    strlen(str)=53.注意当数组名作为参数传入函数中时,退化为指针,对指针进行sizeof,值是4(32位系统),或者8(6...

2018-06-22 09:30:45 223

原创 Struct 和 Union的区别以及内存对齐方式

1.区别:(1)在存储多个成员信息时,struct给每个成员分配存储空间,可以存储多个成员信息;而union成员会用同一个存储空间,只能       存储最后一个成员信息。(2)在任何同一时刻,union中只存放了一个被先选中的成员,struct中所有成员都存在。(3)对于union中的某一成员赋值,会改写其他成员的值,原先的值就不存在了;struct的某一成员赋值不影响其他成员的值。2.对齐方式...

2018-06-21 10:10:10 233

原创 经典的"8皇后"问题(八叉树)

思路:      假设取出一个皇后,放入一行,有8种放置方法,接下来,再取一个皇后,放入下一行,如果不考虑皇后之间”吃“的问题,也同样有8种放置方法,所以可以先将该问题考虑成一个完全8叉树。从根节点开始,每次放一个皇后,树增加一层,一直到第8层,根节点是第0层;利用深度优先搜索,根据限制条件,剔除不符合规则的子树:首先假定在第i行,皇后放在x[i]这个位置:规则1:不能同一行同一列,x[i]不能相...

2018-06-09 15:28:18 1199

原创 最长回文字串 leetcode 5 Longest Palindromic Substring

方法一:动态规划回文字符串去掉收尾字符后依然是回文串,即p[i][j]是回文穿,则p[i+1][j-1]也是回文串;状态方程和转移方程如下:p[i][j]=p[i+1][j-1] if(s[i]==s[j])p[i][j]=false if(s[i]!=s[j])此处,p[i][j]=true 表示字串[i,j]是回文串,p[i,j]=false表示p[i,j]不是回文,复杂度O(N^2)考虑到i...

2018-04-21 15:40:12 66

转载 动态规划 最长回文子序列,回文子序列的个数 http://www.cnblogs.com/AndyJee/p/4465696.html

主要内容:1、什么是回文?2、字符子串和字符子序列的区别3、最长回文子序列的思路和代码4、回文子序列个数的思路和代码 1、什么是回文palindrome?回文指的是正读和反读都一样的字符串,如aba,abba等2、字符子串和字符子序列的区别字符字串指的是字符串中连续的n个字符;如palindrome中,pa,alind,drome等都属于它的字串而字符子序列指的是字符串中不一定连续但先后顺序一致的...

2018-04-18 16:59:55 170

转载 kmp算法转自https://blog.csdn.net/v_july_v/article/details/7041827

从头到尾彻底理解KMP作者:July时间:最初写于2011年12月,2014年7月21日晚10点 全部删除重写成此文,随后的半个多月不断反复改进。后收录于新书《编程之法:面试和算法心得》第4.4节中。1. 引言    本KMP原文最初写于2年多前的2011年12月,因当时初次接触KMP,思路混乱导致写也写得混乱。所以一直想找机会重新写下KMP,但苦于一直以来对KMP的理解始终不够,故才迟迟没有修改...

2018-04-17 14:08:16 450

空空如也

空空如也

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

TA关注的人

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