自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 资源 (5)
  • 问答 (1)
  • 收藏
  • 关注

转载 c++中的左值与右值

转载自 http://www.cnblogs.com/catch/p/3500678.html左值 (lvalue)和右值 (rvalue) 是 c/c++ 中一个比较晦涩基础的概念,有的人可能甚至没有听过,但这个概念到了 c++11 后却变得十分重要,它们是理解 move, forward 等新语义的基础。左值右值的定义左值与右值这两概念是从 c 中传承而来的,在 c 中,左

2017-01-24 15:07:33 312

原创 cJSON系列(1) - cJSON 入门与应用

cJSON 入门与应用1. cJSON简介cJSON aims to be the dumbest possible parser that you can get your job done with. It's a single file of C, and a single header file.JSON is described best here: http

2016-08-31 14:16:15 14607 3

原创 beanutils 入门

beanutils 入门1. beanutils 简介beanutils工具包有apache进行开发,主要是方便程序员对JavaBeans进行操作。实际上beanutils底层是利用了发射机制去操作JavaBeans。beanutils底层去操作JavaBeans的属性时,是通过调用JavaBeans的getter和setter方法进行设值和获取的。2. 搭建环境

2016-08-16 13:12:10 399

转载 Linux makefile 教程 非常详细,且易懂

最近在学习Linux下的C编程,买了一本叫《Linux环境下的C编程指南》读到makefile就越看越迷糊,可能是我的理解能不行。            于是google到了以下这篇文章。通俗易懂。然后把它贴出来,方便学习。           后记,看完发现这篇文章和《Linux环境下的C编程指南》的makefile一章所讲述的惊人的相似,只是这篇文章从一个实例切入,在有些地方比较好理解

2015-12-22 10:53:50 654

原创 排序算法之Bogo排序

排序算法之Bogo排序     基本思想:运气!!!!!!!!      Bogo排序算是一个恶搞排序,它将一切交给了上帝。Bogo排序每一趟都在检测待排序序列是否有序,如果有序,结束。如果无序,将待排序序列随机打乱(随机打乱!!!!!),重新检测。      举例:待排序序列{8, 2, 3, 4, 5, 1, 6 , 7}。      (1){1, 2, 3, 4, 5, 6, 7, 8}

2015-12-04 10:32:59 9595 1

原创 排序算法之梳排序

排序算法之梳排序     基本思想:梳排序和希尔排序很类似。希尔排序是在直接插入排序的基础上做的优化,而梳排序是在冒泡排序的基础上做的优化。也是想希尔排序一样,将待排序序列通过增量分为若干个子序列,然后对子序列进行一趟冒泡排序,一步步减小增量,直至增量为1。所以梳排序的最后一次排序是冒泡排序。      梳排序增量是根据递减率减小的,递减率的设定影响着梳排序的效率,原作者以随机数作实验,得到最有效

2015-12-04 09:50:50 2730 3

原创 排序算法之珠排序

排序算法之珠排序        基本思想:将每个数用珠子表示,例如:数字5就是5个珠子。用珠子表示好每一个数后,让所有的珠子自由下落。排序完成。        例如:数字,{6, 2, 4, 1, 5, 9}        (1)将这些数都用珠子表示。       (2)让珠子自由下落。完成了排序{1, 2, 4, 5, 6, 9}BOOL Bead

2015-12-03 11:53:32 2045

原创 排序算法之耐心排序

排序算法之耐心排序     耐心排序的基本思想:耐心排序还是对插入排序做的一种优化,先将数据调整为基本有序,再进行一次插入排序。耐心排序的关键点是在建桶和入桶的规则上面。      (1)如果还没有桶,新建一个桶。如果不符合入桶规则那么新建一个桶。      (2)要入桶的数字只要比桶里最上面的数字小,即可入桶;如果有多个桶可入,则按照从左到右的顺序入桶。      举例:有待排序序列6, 3

2015-12-03 09:10:30 1991 2

原创 排序算法之奇偶排序

排序算法之奇偶排序     奇偶排序的基本思想就是先对奇数列进行一趟排序,比较奇数列和其相邻的偶数列的元素,如果逆序则交换。再对偶数列进行一趟排序,比较偶数列和其相邻的奇数列的元素,如果逆序则交换。接着对奇数列进行排序,再对偶数列进行排序,重复进行这样的过程,直到奇数列排序和偶数列排序都没有进行交换操作为止。      例如:待排序序列{6, 2, 4, 1, 5,7}      对奇数列和其相

2015-11-23 15:43:19 2521

原创 排序算法之地精排序

排序算法之地精排序     地精排序是最简单的排序算法,它只用一重循环就可以实现。它也像冒泡排序一样,相邻元素之间两两进行比较,如果这两个元素逆序,则交换。与冒泡排序不同的是,它如果遇到交换操作时,变为向前冒泡,直至不发生交换操作位置。相当于做了一个插入操作,将比较小的数插入到前面的有序序列中合适的位置。所以,地精排序可以说是冒泡排序和直接插入排序的综合。      其排序过程如下:循环变量i初值

2015-11-22 11:29:07 3506 1

原创 排序算法之鸡尾酒排序

鸡尾酒排序     鸡尾酒排序实际上是一种双向的冒泡排序。第一趟,从0开始到size-1前往后做“冒泡”,将最大值移动到最后(下标为size-1)。第二趟,从size-2开始到0从后往前做“冒泡”,将最小值移动到最前面(下标为0)。第三趟,从1开始到size-2从前往后做“冒泡”,将最大值移动到最后(下标为size-2)。第四趟,从size-3开始到1从后往前做“冒泡”,将最小值移动到最前面(下标为

2015-11-04 12:51:30 584

原创 排序算法之二路归并排序

二路归并排序    int MergeSort(datatype *array, int low, int high){ int i, j, k; int mid; int *temp; if(array == NULL) { return -1; } if(low >= high) {

2015-11-01 23:14:12 18674 3

原创 排序算法之桶排序

桶排序     桶排序的基本思想就是待排序的数据分别放入不同的桶中,这些桶之间其实是有序的。然后在这些桶中将分在里面的数据进行排序。最终就完成了整个序列的排序。      假设将一个均匀分布在区间[0,200)的一些待排序的序列,分成20个桶中。每个桶的大小都是10。分别存数据[0, 9), [10, 19), [20, 29) …. [190, 199),将待排序数组中的数据分别存进这些桶中,然

2015-10-31 00:39:02 583

原创 排序算法之快速排序

快速排序     快速排序是在待排序序列中选定一个数(一般以选择第一个数),然后将待排序序列这样处理:以选定的这个数为基准,这个数的左边存放比它小的数,右边存放比它大的数。处理完之后去右边的区间选定一个数继续进行这样的过程,去右边的区间选定一个数继续进行这样的过程。      例如序列{50, 10, 90, 30, 70, 40, 80, 60, 20}。第一趟时,选择50为基准,做一个循环将比

2015-10-29 23:43:00 472

原创 排序算法之鸽巢排序

计数排序     计数排序的执行速度快于任何一种排序,但其却需要很大的辅助空间。计数排序的辅助数组的大小取决与待排序数组的数值范围,辅助空间的大小为待排序数组中的最大值与最小值之差加1。比如有序列{11, 13, 56, 23, 63, 23, 98 ,87},则复制数组需要98-11+1=88个空间。      最初时辅助数组中初始化为0,扫描待排序数组时,将待排序序列中的每一个数减去最小值当作

2015-10-29 22:41:32 3622

原创 排序算法之冒泡排序

冒泡排序     冒泡排序是比较相邻的值,如果反序,那么就将这两个数交换,那么循环到最后的时候将会把最大的数交换到最末尾。      例如序列 {2, 4, 8, 6 ,9 ,12, 7, 11, 1, 3, 5,10}      冒泡排序刚开始会比较2与4,顺序正确,则比较4与8,接着比较8与6,反序,交换8与6。则序列变为{2, 4, 6,8,9 ,12, 7, 11, 1, 3, 5,10

2015-10-28 17:47:07 320

原创 排序算法之直接选择排序

直接选择排序     直接选择排序是将整个待排序序列分为两部分,一部分为有序(最开始有序序列为空),一部分为无序(最终无序序列为空)。有序序列中的数都不大于无序序列中的数。它的过程是每次都在无序中寻找一个最小的数,然后将其与无序序列的第一个数交换,并并入有序序列。则有序序列长度增1,无序序列长度减1。      比如:对R[0….n]数组进行选择排序。其中R[0…i]为有序,R[i+1…n]为无序

2015-10-28 15:58:06 585

原创 排序算法之希尔排序

希尔排序    希尔排序是对插入排序的一种改进,它其实是先将整个序列分为一些子序列,然后分别对这些子序列进行排序,排序后之后,再将整个序列分为比前一次序列规模大的子序列,再对这些子序列进行排序,继续这样的操作。直至将整个序列只分为一个子序列,即序列本身。希尔排序其实上是将整个序列慢慢变的基本有序。     希尔排序比较重要的是增量序列。它利用增量序列将整个序列分割为多个子序列。     比如有序

2015-10-28 15:41:05 420

原创 排序算法之折半插入排序

折半插入排序    在直接插入排序的基础上做的改进,直接插入排序在寻找插入位置时是从后到前依次比较,直到找到插入位置。而折半插入排序在寻找插入位置时,先与有序序列中的中间位置R[mid]进行比较,如果比中间位置上的记录大,则在R[mid+1…N]中寻找,继续与右区间的中间记录进行比较;如果比中间位置上的记录小,则在R[0…mid-1]中寻找,继续与左区间中的数据进行比较。int BinaryInse

2015-10-28 14:56:48 3271

原创 排序算法之直接插入排序

直接插入排序直接插入排序的基本思想就是将一个记录插入到一个排好序的有序表中,从而得到一个新的有序表。 假设一个线性表R[0…n], R[0…i]是有序的,则直接插入排序就是将R[i+1]插入到有序表R[0…i]中,从而使R[0…i+1]成为一个有序表。重复以上的操作,直至将R[n]插入到R[0…n-1]中,则R[0…n]最终成为一个有序的线性表。 实现插入排序(一):有监视哨 设置R[0]为监

2015-10-28 14:40:10 320

原创 TCP协议详解(理论篇)

本文章摘自红黑联盟 http://www.2cto.com/net/201208/149347.html 供大家学习交流TCP协议详解1.    与UDP不同的是,TCP提供了一种面向连接的、可靠的字节流服务。面向连接比较好理解,就是连接双方在通信前需要预先建立一条连接,这犹如实际生活中的打电话。助于可靠性,TCP协议中涉及了诸多规则来保障通信链路的可靠性,总结起来,主要有

2014-02-09 20:25:05 604

原创 关于Java中的ServerSocket类与构造服务器的解析

本文整理于网络材料:http://www.360doc.com/content/13/0327/19/7891085_274308578.shtmlServerSocket的构造方法有以下几种重载形式:ServerSocket() throws IOExceptionServerSocket(int port) throws IOExceptionServerSocket(

2014-01-31 21:09:57 1138

转载 在Java中使用NIO进行网络编程

在JDK中,有一个非常有意思的库:NIO(New I/O)。这个库中有3个重要的类,分别是java.nio.channels中Selector和Channel,以及java.nio中的Buffer。本篇文章我们首先了解一下为什么需要NIO来进行网络编程,然后看看一步一步来讲解如何在网络编程中使用NIO。为什么需要NIO使用Java编写过Socket程序的同学一定都知道Soc

2013-11-12 23:47:56 539

C++程序设计原理与实践

C++程序设计原理与实践 (Programing.Principles.and.Practice.Using.C.)

2014-02-17

BitTorrent网络行为研究综述

本文对从2002年到2010年关于BitTorrent网络行为研究的文献进行了调研和总结,介绍了它的性能研究现状,分析了BitTorrent网络的行为建模和仿真,流量特征,拓扑演化规律等,试图为关注BitTorrent网络发展的研究者提供参考,并对下一步BitTorrent网络行为学的研究提出了建议和展望。

2014-02-09

P2P文件共享系统的设计与实现

P2P文件共享系统的设计与实现。文中将P2P技术与网络应用中的文件共享相结合,整合空闲的存储资源,实现一个基于P2P的文件共享系统。

2014-02-09

BitTorrent假块污染攻击的对抗方法研究

BitTorrent假块污染攻击的对抗方法研究

2014-02-09

嵌入式系统开发PPT

嵌入式系统开发 PPT 李宥谋 第1章 嵌入式系统基础知识 第2章 ARM7技术与体系结构 第3章 ARM7指令系统 第4章 基于ARM7系列的汇编语言程序设计 第5章 LPC2000系列微处理器组成与中断技术 第6章 LPC2000系列微处理器片上外设接口 第7章 ARM7系列芯片的外围电路设计 第8章 嵌入式软件开发技术 第9章 嵌入式系统设计与应用

2013-12-12

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

TA关注的人

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