自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xumesang的专栏

追随时代的脚步

  • 博客(29)
  • 资源 (13)
  • 问答 (1)
  • 收藏
  • 关注

原创 gdb调试实战——调试可执行程序,计算缓冲区起始地址与函数foo返回地址的距离

第10章作业缓冲区的起始地址,即变量buffer的起始地址是:0xbfffefd0函数foo返回地址是:0xbfffeffc因此缓冲区起始地址与函数foo返回地址的距离是:0xbfffeffc -0xbfffefd0 =1c =28字节 下面是完整的调试过程:

2015-04-24 10:50:07 2363

原创 常见的网络协议及其所在的层次

网络层:IP、 ICMP、 ARP传输层:TCP、 UDP、OSPF应用层:DHCP、DNS、 FTP、 HTTP、 SSH TELNET等

2015-04-19 20:38:14 3269

原创 一个百度面试的机会

一直以来用百度搜索只是抱着娱乐的态度,要想找到好的资料Google是必须的,当你一次次的对百度搜索的结果感到失望,又一次次地从Google的搜索结果中找到了希望,你就会明白,为什么百度还是太业余了。众所周知,国内要用Google必须用代理(至少我不知道还有什么别的方法),有钱的可以买代理服务,可是对于广大穷学生,尤其是想学技术的同学而言,搞定Google代理就是一个不得不迈过去的坎儿,若果你连这一

2015-04-16 20:39:23 1193

原创 POJ刷题(2013)

程序(已经accepted):#include int main(){ char name[15][26]; int n, i; int N = 1; while(scanf("%d\n", &n) == 1 && n) { for(i=0; i<n; i++) gets(name[i]);

2015-04-16 18:59:21 579

原创 找出最大值和最小值的时间复杂度比较小的一种方法

一般认为,对于给定的n个数,只要独立地找出最小值和最大值,各用n-1次比较,最多2(n-1)次就可以找出最大值和最小值。       实际上,至多3(n/2)次比较就足以同时找到最大值和最小值,具体做法是:成对的处理元素,先将一对元素互相比较,然后将最小者与当前最小值比较,将较大者与当前最大值比较,因此每两个元素需要3次比较。这里要注意n的奇偶,当n是奇数,就将最小值和最大值都设置为第一个元素

2015-04-16 11:08:15 14019

原创 VirtualBox设置共享文件夹

今天在VirtualBox上装了5个虚拟机,模拟局域网和互联网的运行。遇到了一个问题,虚拟机需要装一些软件:例如wireshark等,当然可以把对应的虚拟机网卡设置成桥接模式,这里讲的是通过创建共享文件夹的方式建立一条本机和虚拟机之间的联系通道,其中的缘由尽管发挥你的想象力吧,嘿嘿。操作步骤:我是用Windows2003Server做路由器,双击打开“我的电脑”,在“工具”

2015-04-15 17:25:51 963

原创 POJ刷题(2499)

程序(已经Accepted):#include /* * 逆向思维,从(m,n)到(1,1), * 给定(m,n),求其父亲,若m>n,则其父亲为(m-n,n),否则为(m,n-m), * 但是这样做会TLE,这就需要用除法代替减法,加快速度, * 也就是辗转相除法 * */int main(void){ int n, a, b, l, r, temp, i;

2015-04-14 21:34:35 589

原创 POJ刷题(2406)

程序(已经accepted):#include#include#include#define N 1000010char str[N];int next[N];int get_next(char pattern[], int next[]){ int j=0,k=-1; int len=strlen(pattern); next[0]=-1;

2015-04-14 15:58:14 480

原创 字符串匹配KMP算法实现

由于KMP算法比较难,所以建议初学者分两个阶段学习。第一个阶段先理解算法思想,可以参考这篇文章:点击打开链接第二个阶段,理解算法的具体实现,本文主要讲解这部分,需要注意的地方都在程序里了,自己看吧程序(调试通过):#include #include int KMP(char* s, char* pattern, int start, int next[]);void

2015-04-13 19:43:11 602

原创 ACM刷题需要注意关于输入输出的问题

下面总结一下刷题需要注意的问题:1. scanf函数返回值就是读出的变量个数,没有读到数据返回-1,EOF是一个预定义的常量,为-1;2. scanf函数读入数据,不能规定精度。如:scanf("%7.2f", &n);是不合法的;3. C语言不支持在for语句里定义变量。如:for(int i=0; i三种输入:1. 数据量不定的情况:用while(scanf("%d

2015-04-12 16:49:21 962

原创 HDOJ刷题(1096)

程序(已经accepted):#include int main(){ int i, line, n, number, sum; scanf("%d", & line); for(i=1; i<=line; i++) { if(i>1) printf("\n"); scanf("%d", &n);

2015-04-12 16:34:58 624

原创 HDOJ(1094)

A+B for Input-Output Practice (VI)Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 51712    Accepted Submission(s): 34795Problem Descript

2015-04-12 16:10:57 559

原创 HDOJ刷题(1095)

A+B for Input-Output Practice (VII)Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 51087    Accepted Submission(s): 34226Problem Descrip

2015-04-12 15:43:46 689

原创 HDOJ刷题(1093)

A+B for Input-Output Practice (V)Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 55226    Accepted Submission(s): 37126Problem Descripti

2015-04-12 15:27:43 559

原创 HDOJ刷题(1092)

A+B for Input-Output Practice (IV)Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 74414    Accepted Submission(s): 39738Problem Descript

2015-04-12 15:07:59 1438

原创 HDOJ刷题(1091)

A+B for Input-Output Practice (III)Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 82322    Accepted Submission(s): 43071Problem Descr

2015-04-12 13:30:59 1443

原创 HODJ刷题(1090)

A+B for Input-Output Practice (II)Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 71613    Accepted Submission(s): 46450Problem Desc

2015-04-12 13:21:09 781

原创 HDOJ刷题(1089)

A+B for Input-Output Practice (I)Problem DescriptionYour task is to Calculate a + b.Too easy?! Of course! I specially designed the problem for acm beginners. You must have found that som

2015-04-12 12:43:07 542 1

原创 基数排序

首先来看两个经典引理:引理1:给定n个d位数,每一个数位可以取k种可能的值。基数排序算法能以 θ(d(n+k))的时间正确地对这些数进行排序。引理2:给定n个b位数和任何正整数r θ((b/r)(n+2^r))时间内正确地对这些数进行排序。下面是基数排序的LSD法(最低位优先)程序实现:#include#includeusing namespace std;//返回数字的第

2015-04-11 21:21:08 565

原创 计数排序

计数排序的基本思想就是对每一个输入元素x,确定出小于x的元素个数。有了这一信息,就可以把x直接放到它在最终输出数组中的位置上。计数排序的一个重要性质就是它是稳定的,为什么重要呢?因为计数排序经常用作基数排序算法的一个子过程。废话少说,直接上代码:#include //计数排序,k:数组A中最大的元素; i:数组A元素的个数int* CountSort(int* A, int* B

2015-04-10 21:26:51 607

原创 用PGP实现加密和解密全过程

安装Gpg4win2.2.1,选择安装所有的组件,安装成功后可以看到:步骤1:产生一对RSA密钥输入用户名再输入电子邮件地址,如图所示:接下来输入passphrase,然后就会生成2048位的公钥/私钥对(注意:可能要等待一段时间)如果成功生成了密钥,则会显示在列表中。如

2015-04-10 12:27:33 34425

原创 安装openssl及实现RSA加密解密的详细步骤

1.openssl的安装从官网上下载你需要的openssl版本,既有Linux平台下的,又有windows平台下的,其中Linux平台下的安装很简单,直接一个apt-get(Ubuntu)命令即可,这里介绍Windows平台下的安装。点击Win32OpenSSL-1_0_1i对应的安装文件,安装完后可以看到目C:\OpenSSL-Win32,其中包含了OpenSSL的各类文件。

2015-04-10 12:11:49 2034

原创 两种快速排序算法性能的比较

先来看看第一种快速排序算法(QuickSort1):#include #include #include #define MAXNUM 1024using namespace std;void QuickSort(int A[], int low, int high){ if(low>=high) return; int first = low; int last

2015-04-09 16:07:52 856 1

原创 计算机网络资料速查

1. ASCII码表(八、十、十六进制)2. IP地址分类3.私有IP4.以太网帧的构造5. IP数据报的构成

2015-04-07 22:09:08 724

原创 在windows2003中禁止某个用户从本地登录的方法

首先打开程序-> 管理工具->本地安全策略,参见下图:然后设置:本地安全策略->本地策略->用户权限分配->拒绝本地登录最后选择要禁止的用户点击确定。

2015-04-07 19:20:26 2722

原创 缓冲区溢出及gdp调试全过程

在Linux下编写一下代码:#include #include char Lbuffer[] = "01234567890123456789========ABCD";void foo(){ char buff[16]; strcpy (buff, Lbuffer);}int main(int argc, char * argv[]){ foo();

2015-04-07 19:13:37 3151

原创 安装VirtualBox虚拟机及详细配置

1. 安装VirtualBox虚拟机安装完成后,运行VirtualBox,并配置3个虚拟机,显示如下:版本信息如下:将默认虚拟电脑位置(“管理”—“全局设定”中的“常规”)设置为D:\中的某个目录下,如下图所示:2. 配置多个虚拟网卡,模拟多个网络从virtualbox管理器中选“管理”—“全局设定”打开“VirtualBox设置”,

2015-04-07 18:35:39 1029

转载 Vmstat命令详解

原文地址:点击打开链接一、前言vmstat命令:  用来获得有关进程、虚存、页面交换空间及 CPU活动的信息。这些信息反映了系统的负载情况二、虚拟内存运行原理在系统中运行的每个进程都需要使用到内存,但不是每个进程都需要每时每刻使用系统分配的内存空间。当系统运行所需内存超过实际的物理内存,内核会释放某些进程所占用但未使用的部分或所有

2015-04-05 13:00:21 425

原创 排列与组合的区别

排列的定义:从n个不同的元素中,取r个不重复的元素,按次序排列,称为从n个中取r个的无重排列。排列的个数用P(n,r)表示。当r=n时称为全排列。组合的定义:从n个不同元素中取r个不重复的元素组成一个子集,而不考虑其元素的顺序,称为从n个中取r个的无重组合。组合的个数用C(n,r)表示 排列与组合最基本的公式:         =================

2015-04-01 10:08:56 2734

攻击图技术应用研究综述

攻击图是一种预判攻击者对目标网络发送攻击的方式和过程,指导防御方对网络中的节点采取针对性防御措施,提高网络安全的技术 本文是综述文章,发表在2017年《通信学报》,具有较大参考价值

2019-12-18

信息安全技术 网络安全威胁信息表达模型(征求意见稿)

本标准按照GB/T 1.1-2009 给出的规则起草 本标准由全国信息安全标准化技术委员会提出,目前处于征求意见稿阶段

2019-12-18

Modbus官方文档

Modbus官方文档

2016-03-09

vmware安装ubantu

这个文件包括了vmware的安装,虚拟机的配置和ubantu的安装,每一步都有图,非常详细,我自己就是按这个步骤完成的,“予人玫瑰,手留余香”

2014-09-18

MySQL 5.1参考手册

这是MySQL参考手册的翻译版本。 本手册共包括了27章和11个附录文件。章节分别讲述一下内容:安装MySQL;MYSQL程序概述;数据库管理;优化;客户端和实用工具程序;语言结构;字符集支持;列类型;函数和操作符;SQL语句语法;编写自定义存储引擎;分区;MySQl空间扩展;触发程序;视图;API和库;连接器等主要章节。附录内容:问题和常见错误;错误代码和消息;MySQL变更史;移植到其他系统等。

2014-09-09

24小时学通qt编程

QT是用于创建Linux下的图形程序最出色的工具包之一。QT不仅适用于UNIX/Linux,而且还适用于Windows.本书分6个部分:QT基础知识,介绍面向对象程序设计、槽和信号、QT构造块等;重要的QT部件,介绍常用QT部件的使用方法、怎样绘制图形和创建对话框等;摄入学习QT,介绍布局管理器、文件盒目录、文本和常规表达式、容器类、图形、程序通信等;QT编程技巧;改善程序性能,介绍QT程序的移植、调试等问题。

2014-09-07

C++ 设计新思维:范型编程与设计模式之应用 中文PDF

全书共11章。分别介绍了:policies,一种有助于产生灵活设计的C++技巧;与泛型编程有关的通用C++技巧;实作typelists,一种功能强大、用于操纵型别的书籍结构;小型对象分析器;Singleton对象等

2014-09-07

DOS高手速成

虽然大部分人都在用Windows操作系统,但扔要在硬盘上保留一份DOS,以备不时之需。本书主要讲解:1. DOS概述及入门 2.DOS常用命令 3.DOS命令集锦 4.使用屁处理文件 5.如何进行系统配置 6.出错提示与对策 7.其他

2014-09-06

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

TA关注的人

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