`
shaojiashuai123456
  • 浏览: 265995 次
  • 性别: Icon_minigender_1
  • 来自: 吉林
社区版块
存档分类
最新评论
文章列表

TCP/IP 头部

 (1)IPv4 头部    版本   IP报文首部的第一个字段是4位版本字段。对IPv4来说,这个字段的值是4。   首部长度(IHL)   第二个字段是4位首部长度,说明首部有多少32位字长。由于IPv4首部可能包含数目不定的选项,这个字 ...
#include <stdio.h> #include <stdlib.h> #include <time.h> #include <string.h> int piaoshu(char *s,char *p) { int i,j; //间距不断增大 for(i=0;i<strlen(s)-strlen(p)+1;i++) { //进行匹配 for(j=0;j<strlen(p);j++) { ...
#include <stdio.h> #include <stdlib.h> #include <time.h> #include <string.h> int next[1000]; //记录跳转位置 int kmp_next(char *base) { int i,j; i=0; j=-1; next[0]=-1; //记录第一个字符的跳转位置为-1 while(base[i]!='\0') { //如果跳转到-1,说明只 ...
      本文将介绍字符串匹配算法中的 朴素算法、快速匹配和自动机匹配 (1)朴素算法       朴素算法是一个比较容易理解的算法,也是容易编写的算法。      设偏移量为s,当T【s+0,s+1..s+n-1】=P[0,1,...n-1]时,说明文本 ...

高级算法

高级算法包括:动态规划,贪心算法 (1)动态规划        动态规划算法是通过整合子问题来解决整个问题的,也就是说通过子问题的求解,可以得出次问题的解。        动态规划关键是找出问题求解方程,即找到子问题和问题解的关系。              例如:跳台阶问题       题目:一个台阶总共有n 级,如果一次可以跳1 级,也可以跳2 级,求总共有多少总跳法。        这是一道组合数学的题目,只要找到求解方程即可:        f( n )= f( n-1 ) + f( n-2 )   并且 f(1)=1,f(2)=2        方程含义是说     ...
#include <stdio.h> #include <stdlib.h> #include <string.h> //交换两个位置 void swap(int a[],int pos1,int pos2) { a[pos1]=a[pos1]^a[pos2]; a[pos2]=a[pos1]^a[pos2]; a[pos1]=a[pos1]^a[pos2]; } //冒牌排序 void bubble(int a[],int n) { int ...
#include <stdio.h> #include <stdlib.h> #include <string.h> //将两个有序序列合并为一个有序序列 void merge(int a[],int left_pos,int right_pos) { int temp[right_pos-left_pos+1]; int mid=(left_pos+right_pos)/2; int left=left_pos,right=mid+1; int count=0; while(left ...
#include <stdio.h> #include <stdlib.h> void qsort(int a[],int left_pos,int right_pos) { if(left_pos<right_pos) { int left=left_pos,right=right_pos; int temp=a[left]; //获取标准 while(left<right) { while(left ...
#include <stdio.h> #include <stdlib.h> //交换两个位置 void swap(int a[],int pos1,int pos2) { a[pos1]=a[pos1]^a[pos2]; a[pos2]=a[pos1]^a[pos2]; a[pos1]=a[pos1]^a[pos2]; } //调整start点的堆结构 void fix_max_heap(int a[],int start,int num) { int max_child; //有两个节 ...
1 分页机制        早期计算机直接使用物理地址进行内存的使用和管理,但是硬件资源有限,而且不同的程序需要使用不同的物理地址,这样给程序的管理和运行造成了很大的难度,而且极易造成一个程序覆盖其他程序的问题,使正常运行的程序出现错误。        针对以上问题提出了使用虚拟地址与物理地址映射的管理方式,这样每个程序都可以使用相同的地址,但是由于每个进程使用不同的叶表,所以使用不同的物理页,这样就可以解决以上的问题。       下图为Linux下分页机制的实现原理,虚拟地址经过页面目录和页表的查询,找到页物理地址,最后将偏移量合成为物理地址。 2 分段机制      其实分页机制已 ...
        链接是将各种代码和数据部分收集起来并组合成为一个单一文件的过程,这个文件可被加载(或被拷贝)到存储器并执行。        1、编译过程: 1.预编译 替换宏定义和外部文件的引用(例如 #define  和  #include) [xyk@xyk linking]$ gcc -E main.c -o main.i 2.编译 将c语言或者c++语言翻译成汇编语言[xyk@xyk linking]$ gcc -S main.i -o man.s 3.汇编 将汇编语言使用汇编器,编译成机器语言 [xyk@xyk linking]$ gcc -c main.s -o ...
#include <stdio.h> #include <stdlib.h> #include <ctype.h> #include <string.h> #include <fcntl.h> #include <unistd.h> #include <sys/stat.h> #include <sys/types.h> #include <sys/time.h> static char buffer[1024]; static c ...

守护进程

引入头文件: #include<unistd.h> #include<sys/types.h>   代码main函数中加入:   switch (fork()) { case 0: { printf("start system\n"); setsid(); } break; case -1: printf("can't fork\n"); break; default: exit(0); }  

DNS bind9 配置

安装环境:Linux 2.6.18-92.el5 x86_64 安装软件:bind-9.7.5   1、 bind安装 在压缩包存放的目录下(假设我们要把bind放在/home/目录下) cd /home/ tar zxvf bind-9.7.5.tar.gz cd bind-9.7.5 ./configure --prefix=/usr/local/bind make depend make make install mkdir -p /usr/local/bind/var/run mkdir -p /usr/local/bind/va ...
oracle数据库建立步骤 1、建表空间: create tablespace icmp datafile '/u01/oradata/wilson/icmp.dbf' size 300M autoextend on next 100M maxsize 2048M extent management local; 建立临时表空间: create temporary tablespace linkprobe_fzx2_temp tempfile '/u01/oradata/wilson/linkprobe_fzx2_temp.dbf' size 300M autoextend on next ...
Global site tag (gtag.js) - Google Analytics