- 博客(28)
- 资源 (15)
- 收藏
- 关注
转载 KMP算法代码案例
#include <stdio.h>#include <string.h>#include <stdlib.h>int *computer_prefix(char *str_p,int *tt){ if(NULL == str_p) return NULL; int i=0,j=0; int m = strlen(str_p); tt[0]=0;
2017-03-27 15:49:56
338
转载 Netfilter源代码分析详解
一、概述1. Netfilter/IPTables框架简介 Netfilter/IPTables是继2.0.x的IPfwadm、2.2.x的IPchains之后,新一代的Linux防火墙机制。Netfilter采用模块化设计,具有良好的可扩充性。其重要工具模块IPTables连接到Netfilter的架构中,并允许使用者对数据报进行过滤、地址转换、处理等操作。 Netfi
2017-03-27 14:31:08
6601
转载 Linux TC 介绍
众所周知,在互联网诞生之初都是各个高校和科研机构相互通讯,并没有网络流量控制方面的考虑和设计,IP协议的原则是尽可能好地为所有数据流服务,不同的数据流之间是平等的。然而多年的实践表明,这种原则并不是最理想的,有些数据流应该得到特别的照顾,比如,远程登录的交互数据流应该比数据下载有更高的优先级。 针对不同的数据流采取不同的策略,这种可能性是存在的。并且,随着研究的发展和深入,人们已经提出了各
2017-02-07 16:50:12
626
转载 OSI七层模型详解
OSI 七层模型通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯,因此其最主要的功能就是帮助不同类型的主机实现数据传输 。完成中继功能的节点通常称为中继系统。在OSI七层模型中,处于不同层的中继系统具有不同的名称。 一个设备工作在哪一层,关键看它工作时利用哪一层的数据头部信息。网桥工作时,是以MAC头部来决定转发端口的,因此显然它是数据链路层的设备。具体说:物理层:网卡,网
2017-02-06 09:54:51
1291
原创 迪菲-赫尔曼密钥交换
迪菲-赫尔曼密钥交换(Diffie–Hellman key exchange,简称“D–H”) 是一种安全协议。它可以让双方在完全没有对方任何预先信息的条件下通过不安全信道建立起一个密钥。这个密钥可以在后续的通讯中作为对称密钥来加密通讯内容。 迪菲-赫尔曼通过公共信道交换一个信息,就可以创建一个可以用于在公共信道上安全通信的共享秘密(shared secret)。 交换信息的整个过程:其中
2017-01-24 14:26:37
2576
1
原创 网络包几种格式ethhdr、ether_header、iphdr、tcphdr、udphdr
1、iphdriphdr,是一种计算机用语。是Linux下IP数据包的描述结构体。所在头文件为/usr/src/linux/include/linux/ip.h,结构如下:struct iphdr {#if defined(__LITTLE_ENDIAN_BITFIELD) //小端模式下 __u8 ihl:4,//首部长度(4位) version:4;//ip协议版本I
2017-01-19 10:24:37
7152
1
转载 Ubuntu安装后要做的几件事
一阵子折腾黑苹果,难倒在“五国”错误,试了好多的方法仍然没能解决,就没有在折腾了。其中有一些相关的文件你可能也会用到,你可以到“我的共享”中下载。在安装黑苹果的过程中,把电脑上分区表搞坏了,原来的ubuntu和window 7都挂了,只能再重新装一次。此次特地把相关的命令记下来,免得日后忘记。给root用户设置密码ubuntu安装成功以后,su命令是不能够使用的。主要是因为你还没有给r
2014-10-20 11:19:51
748
转载 请定义一个宏,比较两个数的a、b的大小,不能使用大于、小于、if语句
方法一:[cpp] view plaincopyprint?#define max(a,b) ((((long)((a)-(b)))&0x80000000)?(b):(a)) 若a>b,则a-b的二进制最高位为0,与上任何数还是0,所以大数为a;否则,a-b为负数,最高位为1,与上0x80000000(最高位为1
2014-10-14 23:54:25
549
转载 腾讯笔试:把两个数和告诉A,积告诉B,求这两个数是什么
题目:1-20的两个数把和告诉A,积告诉B,A说不知道是多少,B也说不知道,这时A说我知道了,B接着说我也知道了,问这两个数是多少?分析:设和为S,积为M。首先,A:我不知道。说明:S可以分解成多个组合,而2=1+1,3=1+2,40=20+20,39=19+20,只有一种分解方式,因此S应属于[4,38]集合。其
2014-10-14 23:51:07
881
1
原创 汇顶科技2015校招 技术面(群面)试题 猴子分桃问题
#include "stdio.h"#define MAX 4#define TEMP temp/4#define ZERO 0/*沙滩上有一堆桃子,5只猴子决定第二天平分,第二天,最早的一直猴子左分右分怎么也分不开,于是它往海里扔了些,然后正好分成5份,自己带走一分,扔掉的比拿走的少,每只猴子都是这么做的,问有多少个桃子*//*本程序的数据量比较大建议运行1~2秒后关闭,之后在
2014-10-13 23:20:44
1997
原创 数据结构 排序算法 (插入、快速、Shell、堆、合并)
#include "stdio.h"#include "time.h"#include "stdlib.h"#define MAX 10#define SWAP(x,y){int t=x;x=y;y=t;}void RandNumber(int []);//产生随机数void PrintNumber(int []);//打印void InsertSort(int []);//插
2014-10-01 23:06:49
623
原创 腾讯 2015年校招 笔试 附加题
//腾讯2015年 校招 笔试 附加题//将10进制正整数转换成4为36进制//36进制 "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"//100 "002S"//36 "0010"#include "stdio.h"char s[5]={'0','0','0','0','0'};int i=-1;char f(int n){ if(n<10
2014-09-13 21:09:17
861
原创 数据结构 shell 快速
#include "stdio.h"#include "stdlib.h"#include "time.h"#define MAX 10#define SWAP(x,y) {int t = x; x= y; y =t;}int n=0;void shell(int [],int);void main(){ int number[MAX]={0}; int i; in
2014-09-12 11:44:59
769
原创 数据结构 三种简单的排序(插入、选择、冒泡)
#include "stdio.h"#include "stdlib.h"#include "time.h"#define MAX 10#define SWAP(x,y) {int t;t=x; x=y; y=t;}void selsort(int []);void insort(int []);void bubsort(int []);void bubsort1(in
2014-09-07 18:37:42
539
原创 数据挖掘 关联规则算法
//关联规则算法#include "stdio.h"#include "string.h"#define AFFAIRS_NUMBER 9 //事务数#define COMMODITY_NUMBER 5//商品数 商品 a b c d e#define ITEMSETS_NUMBER 10//项集数typedef struct { int number;//事务中的商品
2014-06-03 00:26:42
881
原创 数据挖掘算法 apriori算法
//Apriori算法#include "stdio.h"#include "string.h"#define AFFAIRS_NUMBER 9 //事务数#define COMMODITY_NUMBER 5//商品数 商品 a b c d e#define ITEMSETS_NUMBER 10//项集数typedef struct { int number;//事务中
2014-06-03 00:22:07
739
原创 数据结构 树(树与等价问题)
树离散数学中,对等关系和等价类的定义是:如果集合S中的关系R是自反的、对称的和传递的,则成它为一个等价关系划分等价类需要对集合进行的操作有3个:1、构造只含有单个成员的集合,2、判断某个单元所在子集,3、归并两个互不相交的集合为一个集合由此,需要一个包含上述3种操作的数据类型MFSetADT MFSet{数据对象:若设S是MF
2014-05-12 20:30:25
7306
原创 数据结构 树(线索二叉树)
/*二叉树的链式存储中不能够得到一个结点的前驱和后继的信息这些信息只有在遍历的动态过程中才能得到。为了保存这种在遍历中也可得到的信息最简单的方法就是为每一个结点增加两个指针域;fwd和bkwd注:此处的前驱和后继为:遍历过程中的前驱和后继(误解:该结点的父节点和子节点)另外在n个结点中,必存在n+1个空链域(因为满二叉树总结点树2n+1,个人理解的)由此设想能否利用这些空
2014-05-11 17:05:39
553
原创 数据结构 树(二叉树 链式存储)
#include "stdio.h"#include "malloc.h"#include "stdlib.h"#define MAXNODE 100typedef char TElemType;typedef struct BiTNode{ TElemType data; struct BiTNode *lchild,*rchild;}BiTNode,*BiTree;//
2014-05-11 17:03:58
680
原创 数据结构 链表(静态链表)
#include "stdio.h"#define MAXSIZE 100/** 静态链表: 在C语言之前,如Basics、Fortran等早期的编程高级语言,由于没有指针,链表没法是实现 有人想出用数组来代替链表 首先让数组的元素怒都是由两个数据与组成 data 和 cur 数据域data 用来存放数据元素 游标 cur等同于单链表的next指针,存放钙元素的后
2014-05-07 18:14:30
596
原创 数据结构 栈(四则表达式)
#include "stdio.h"#define MAXSIZE 20#define max_size 30typedef struct { int data[MAXSIZE]; int top;}NumberStack,*pNumberStack;//数字栈typedef struct { char data[MAXSIZE]; int top;}SymbolStack
2014-05-06 23:06:26
611
原创 有关java中数据类型byte,int的一个小问题
先让大家看几句代码class Test{public static void main(String[] agrs){byte b = 1;byte b1 = 2;byte b2 = 3;b = b1 + b2;System.out.println(b);}}对于上面的代码,如果是int型的数据我们经常就是这么用的,然而对于byte型这里在编译会出错
2013-10-25 17:13:37
715
原创 java初学有关环境变量classpayh和path
第一次写博客,作为一名jiava程序员初学者,在安装jdk之后经常会设置环境变量,因此出现设置path和classpath问题,经常设置不对,这里简单介绍一下首先安装java sdk,关于sdk 全称(Java SE Development Kit)java标准开发包,它提供了编译、运行java程序所需的各种工具和资源,包括Java编译器。java运行时的环境、以及java常用的类库。J
2013-10-24 23:37:52
813
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人